fix viewlayer removal error

1.8.14

- fixed: error when trying remove a viewlayer
main
pullusb 2025-03-10 18:20:33 +01:00
parent 35a99ff6cd
commit 9b76e380ae
3 changed files with 15 additions and 5 deletions

View File

@ -14,6 +14,10 @@ Activate / deactivate layer opacity according to prefix
Activate / deactivate all masks using MA layers Activate / deactivate all masks using MA layers
--> -->
1.8.14
- fixed: error when trying remove a viewlayer
1.8.13 1.8.13
- changed: improve `connect to fileoutput` feature: - changed: improve `connect to fileoutput` feature:

View File

@ -90,10 +90,16 @@ class GPEXP_OT_clean_compo_tree(bpy.types.Operator):
if self.clear_unused_view_layers: if self.clear_unused_view_layers:
used_rlayer_names = [n.layer for n in nodes if n.type == 'R_LAYERS'] used_rlayer_names = [n.layer for n in nodes if n.type == 'R_LAYERS']
vl_number = len(scn.view_layers)
if vl_number > 1:
for rl in reversed(scn.view_layers): for rl in reversed(scn.view_layers):
if rl.name in used_rlayer_names or rl.name == 'View Layer': if vl_number <= 1:
## Do not try to remove the last view layer (can use try except with RuntimeError check)
break
if rl.name in used_rlayer_names or rl.name in ('View Layer', 'ViewLayer'):
continue continue
scn.view_layers.remove(rl) scn.view_layers.remove(rl)
vl_number -= 1
if self.arrange_rl_nodes: if self.arrange_rl_nodes:
fn.rearrange_rlayers_in_frames(node_scene.node_tree) fn.rearrange_rlayers_in_frames(node_scene.node_tree)

View File

@ -2,7 +2,7 @@ bl_info = {
"name": "GP Render", "name": "GP Render",
"description": "Organise export of gp layers through compositor output", "description": "Organise export of gp layers through compositor output",
"author": "Samuel Bernou", "author": "Samuel Bernou",
"version": (1, 8, 13), "version": (1, 8, 14),
"blender": (3, 0, 0), "blender": (3, 0, 0),
"location": "View3D", "location": "View3D",
"warning": "", "warning": "",