[Bf-blender-cvs] [4212ea7b7de] blender-v2.92-release: Fix T85260: Viewport render does not draw background

Jeroen Bakker noreply at git.blender.org
Fri Feb 5 13:06:08 CET 2021


Commit: 4212ea7b7de70f2346e27505ae7e966a7830f038
Author: Jeroen Bakker
Date:   Fri Feb 5 12:57:00 2021 +0100
Branches: blender-v2.92-release
https://developer.blender.org/rB4212ea7b7de70f2346e27505ae7e966a7830f038

Fix T85260: Viewport render does not draw background

Regression introduced by {rBed809866b172} where overlays weren't drawn
when overlays are turned off. The background in wireframe, solid
(always) and material preview and render preview (when not using scene
world) are also part of the overlays.

===================================================================

M	source/blender/draw/intern/draw_manager.c

===================================================================

diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c
index f474ae542d9..bc41eab9e22 100644
--- a/source/blender/draw/intern/draw_manager.c
+++ b/source/blender/draw/intern/draw_manager.c
@@ -1715,7 +1715,12 @@ void DRW_draw_render_loop_offscreen(struct Depsgraph *depsgraph,
 
   GPU_matrix_identity_set();
   GPU_matrix_identity_projection_set();
-  const bool do_overlays = (v3d->flag2 & V3D_HIDE_OVERLAYS) == 0;
+  const bool do_overlays = (v3d->flag2 & V3D_HIDE_OVERLAYS) == 0 ||
+                           (ELEM(v3d->shading.type, OB_WIRE, OB_SOLID)) ||
+                           (ELEM(v3d->shading.type, OB_MATERIAL) &&
+                            (v3d->shading.flag & V3D_SHADING_SCENE_WORLD) == 0) ||
+                           (ELEM(v3d->shading.type, OB_RENDER) &&
+                            (v3d->shading.flag & V3D_SHADING_SCENE_WORLD_RENDER) == 0);
   GPU_viewport_unbind_from_offscreen(render_viewport, ofs, do_color_management, do_overlays);
 
   if (draw_background) {



More information about the Bf-blender-cvs mailing list