Skip to content

Commit a73ff2b

Browse files
committed
engine/final: Remove loop over view layers. Blender already triggers rendering per layer.
1 parent 574b274 commit a73ff2b

File tree

1 file changed

+18
-17
lines changed

1 file changed

+18
-17
lines changed

engine/final.py

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -23,31 +23,32 @@ def render(engine, depsgraph):
2323

2424
_check_halt_conditions(engine, scene)
2525

26-
for layer_index, layer in enumerate(scene.view_layers):
27-
print('[Engine/Final] Rendering layer "%s"' % layer.name)
26+
layer = depsgraph.view_layer_eval
2827

29-
dummy_result = engine.begin_result(0, 0, 1, 1, layer=layer.name)
28+
print('[Engine/Final] Rendering layer "%s"' % layer.name)
3029

31-
# Check if the layer is disabled. Cycles does this the same way,
32-
# to be honest I have no idea why they don't just check layer.use
33-
if layer.name not in dummy_result.layers:
34-
# The layer is disabled
35-
engine.end_result(dummy_result, cancel=True, do_merge_results=False)
36-
continue
30+
dummy_result = engine.begin_result(0, 0, 1, 1, layer=layer.name)
3731

32+
# Check if the layer is disabled. Cycles does this the same way,
33+
# to be honest I have no idea why they don't just check layer.use
34+
if layer.name not in dummy_result.layers:
35+
# The layer is disabled
3836
engine.end_result(dummy_result, cancel=True, do_merge_results=False)
37+
#continue
3938

40-
# This property is used during export, e.g. to check for layer visibility
41-
utils_view_layer.State.active_view_layer = layer.name
39+
engine.end_result(dummy_result, cancel=True, do_merge_results=False)
4240

43-
_add_passes(engine, layer, scene)
44-
_render_layer(engine, depsgraph, statistics, layer)
41+
# This property is used during export, e.g. to check for layer visibility
42+
utils_view_layer.State.active_view_layer = layer.name
4543

46-
if _stop_requested(engine):
47-
# Blender skips the rest of the render layers anyway
48-
return
44+
_add_passes(engine, layer, scene)
45+
_render_layer(engine, depsgraph, statistics, layer)
46+
47+
if _stop_requested(engine):
48+
# Blender skips the rest of the render layers anyway
49+
return
4950

50-
print('[Engine/Final] Finished rendering layer "%s"' % layer.name)
51+
print('[Engine/Final] Finished rendering layer "%s"' % layer.name)
5152

5253

5354
def _render_layer(engine, depsgraph, statistics, view_layer):

0 commit comments

Comments
 (0)