[Bf-blender-cvs] [ae217295578] master: Cycles: Un-pause render when switching to rendered viewport
Sergey Sharybin
noreply at git.blender.org
Mon Mar 21 11:30:41 CET 2022
Commit: ae2172955785e22565e6893054d5659bac834470
Author: Sergey Sharybin
Date: Mon Mar 21 10:58:37 2022 +0100
Branches: master
https://developer.blender.org/rBae2172955785e22565e6893054d5659bac834470
Cycles: Un-pause render when switching to rendered viewport
Consider switching to rendered shading type as a request to start
rendering, without requiring to un-pause.
This minimizes amount of clicks needed to start rendering after
viewport was paused once, and then shading mode got changed.
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D14244
===================================================================
M intern/cycles/blender/addon/__init__.py
===================================================================
diff --git a/intern/cycles/blender/addon/__init__.py b/intern/cycles/blender/addon/__init__.py
index 5578e83b19a..74b28b8ea21 100644
--- a/intern/cycles/blender/addon/__init__.py
+++ b/intern/cycles/blender/addon/__init__.py
@@ -83,6 +83,17 @@ class CyclesRender(bpy.types.RenderEngine):
# viewport render
def view_update(self, context, depsgraph):
if not self.session:
+ # When starting a new render session in viewport (by switching
+ # viewport to Rendered shading) unpause the render. The way to think
+ # of it is: artist requests render, so we start to render.
+ # Do it for both original and evaluated scene so that Cycles
+ # immediately reacts to un-paused render.
+ cscene = context.scene.cycles
+ cscene_eval = depsgraph.scene_eval.cycles
+ if cscene.preview_pause or cscene_eval.preview_pause:
+ cscene.preview_pause = False
+ cscene_eval.preview_pause = False
+
engine.create(self, context.blend_data,
context.region, context.space_data, context.region_data)
More information about the Bf-blender-cvs
mailing list