Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPablo Vazquez <pablo@blender.org>2022-07-24 05:26:46 +0300
committerPablo Vazquez <pablo@blender.org>2022-07-24 05:26:46 +0300
commit4a522d353a585e6986ac7c98c1d0decadc7db916 (patch)
treeec6cebe2d7f6f44215ba08e34e9494b6de2a1354
parentb364669bd7ec08f1c5c8b9f063f3a421a32a5f7b (diff)
Amaranth: Fix Debug feature to list users of image datablocks
The code was looking for background images in the 3D Viewport, which have been moved to Camera objects in 2.8. Fixes T98252
-rw-r--r--amaranth/__init__.py2
-rwxr-xr-xamaranth/scene/debug.py34
2 files changed, 19 insertions, 17 deletions
diff --git a/amaranth/__init__.py b/amaranth/__init__.py
index 06a42c8e..e63f0cb9 100644
--- a/amaranth/__init__.py
+++ b/amaranth/__init__.py
@@ -74,7 +74,7 @@ from amaranth.misc import (
bl_info = {
"name": "Amaranth Toolset",
"author": "Pablo Vazquez, Bassam Kurdali, Sergey Sharybin, Lukas Tönne, Cesar Saez, CansecoGPC",
- "version": (1, 0, 10),
+ "version": (1, 0, 11),
"blender": (3, 2, 0),
"location": "Everywhere!",
"description": "A collection of tools and settings to improve productivity",
diff --git a/amaranth/scene/debug.py b/amaranth/scene/debug.py
index 38692743..a73d688e 100755
--- a/amaranth/scene/debug.py
+++ b/amaranth/scene/debug.py
@@ -65,7 +65,7 @@ class AMTH_store_data():
'TEXTURE': [], # Textures (Psys, Brushes)
'MODIFIER': [], # Modifiers
'MESH_DATA': [], # Vertex Colors
- 'VIEW3D': [], # Background Images
+ 'OUTLINER_OB_CAMERA': [], # Background Images
'NODETREE': [], # Compositor
}
libraries = [] # Libraries x type
@@ -632,6 +632,7 @@ class AMTH_SCENE_OT_list_users_for_x(Operator):
if name not in AMTH_store_data.users['MATERIAL']:
AMTH_store_data.users['MATERIAL'].append(name)
+
# Check Lights
for la in d.lights:
# Cycles
@@ -643,6 +644,7 @@ class AMTH_SCENE_OT_list_users_for_x(Operator):
no.image and no.image.name == x:
if la.name not in AMTH_store_data.users['LIGHT']:
AMTH_store_data.users['LIGHT'].append(la.name)
+
# Check World
for wo in d.worlds:
# Cycles
@@ -654,6 +656,7 @@ class AMTH_SCENE_OT_list_users_for_x(Operator):
no.image and no.image.name == x:
if wo.name not in AMTH_store_data.users['WORLD']:
AMTH_store_data.users['WORLD'].append(wo.name)
+
# Check Textures
for te in d.textures:
if te and te.type == 'IMAGE' and te.image:
@@ -662,6 +665,7 @@ class AMTH_SCENE_OT_list_users_for_x(Operator):
if name == x and \
name not in AMTH_store_data.users['TEXTURE']:
AMTH_store_data.users['TEXTURE'].append(te.name)
+
# Check Modifiers in Objects
for ob in d.objects:
for mo in ob.modifiers:
@@ -672,21 +676,19 @@ class AMTH_SCENE_OT_list_users_for_x(Operator):
name = '"{0}" modifier in {1}'.format(mo.name, ob.name)
if name not in AMTH_store_data.users['MODIFIER']:
AMTH_store_data.users['MODIFIER'].append(name)
- # Check Background Images in Viewports
- for scr in d.screens:
- for ar in scr.areas:
- if ar.type == 'VIEW_3D':
- if ar.spaces and \
- ar.spaces.active and \
- ar.spaces.active.background_images:
- for bg in ar.spaces.active.background_images:
- image = bg.image
-
- if bg and image and image.name == x:
- name = 'Background for 3D Viewport in Screen "{0}"'\
- .format(scr.name)
- if name not in AMTH_store_data.users['VIEW3D']:
- AMTH_store_data.users['VIEW3D'].append(name)
+
+ # Check Background Images in Cameras
+ for ob in d.objects:
+ if ob and ob.type == 'CAMERA' and ob.data.background_images:
+ for bg in ob.data.background_images:
+ image = bg.image
+
+ if bg and image and image.name == x:
+ name = 'Used as background for Camera "{0}"'\
+ .format(ob.name)
+ if name not in AMTH_store_data.users['OUTLINER_OB_CAMERA']:
+ AMTH_store_data.users['OUTLINER_OB_CAMERA'].append(name)
+
# Check the Compositor
for sce in d.scenes:
if sce.node_tree and sce.node_tree.nodes: