[Bf-blender-cvs] [e28f0f179d2] master: Fix T62279: Rendering simple geometry corrupts with greasepencil layer
Clément Foucault
noreply at git.blender.org
Tue Mar 12 16:01:31 CET 2019
Commit: e28f0f179d2a4c5f547c8fce6f010e7b733d6887
Author: Clément Foucault
Date: Tue Mar 12 15:53:10 2019 +0100
Branches: master
https://developer.blender.org/rBe28f0f179d2a4c5f547c8fce6f010e7b733d6887
Fix T62279: Rendering simple geometry corrupts with greasepencil layer
This was caused by a missing state reset. Also adding safety state reset
before and after drawing (might not be necessary).
===================================================================
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 949e049ca80..c409d015330 100644
--- a/source/blender/draw/intern/draw_manager.c
+++ b/source/blender/draw/intern/draw_manager.c
@@ -1876,6 +1876,9 @@ void DRW_render_to_image(RenderEngine *engine, struct Depsgraph *depsgraph)
BLI_rcti_init(&render_rect, 0, size[0], 0, size[1]);
}
+ /* Reset state before drawing */
+ DRW_state_reset();
+
/* Init render result. */
RenderResult *render_result = RE_engine_begin_result(
engine,
@@ -1895,6 +1898,7 @@ void DRW_render_to_image(RenderEngine *engine, struct Depsgraph *depsgraph)
engine_type->draw_engine->render_to_image(data, engine, render_layer, &render_rect);
/* grease pencil: render result is merged in the previous render result. */
if (DRW_render_check_grease_pencil(depsgraph)) {
+ DRW_state_reset();
DRW_render_gpencil_to_image(engine, render_layer, &render_rect);
}
DST.buffer_finish_called = false;
@@ -1913,6 +1917,9 @@ void DRW_render_to_image(RenderEngine *engine, struct Depsgraph *depsgraph)
drw_state_ensure_not_reused(&DST);
#endif
+ /* Reset state after drawing */
+ DRW_state_reset();
+
/* Changing Context */
if (re_gl_context != NULL) {
DRW_gawain_render_context_disable(re_gpu_context);
More information about the Bf-blender-cvs
mailing list