[Bf-blender-cvs] [626e291d1c8] tmp-overlay-engine: Overlay Engine: Wireframe: Fix wireframe overlay on top of infront objects
Clément Foucault
noreply at git.blender.org
Wed Nov 27 14:53:49 CET 2019
Commit: 626e291d1c852b5ed6b83de98a294005da6e84ee
Author: Clément Foucault
Date: Wed Nov 27 15:24:24 2019 +0100
Branches: tmp-overlay-engine
https://developer.blender.org/rB626e291d1c852b5ed6b83de98a294005da6e84ee
Overlay Engine: Wireframe: Fix wireframe overlay on top of infront objects
===================================================================
M source/blender/draw/engines/overlay/overlay_wireframe.c
===================================================================
diff --git a/source/blender/draw/engines/overlay/overlay_wireframe.c b/source/blender/draw/engines/overlay/overlay_wireframe.c
index c3e2c6487b3..9fe1db51e53 100644
--- a/source/blender/draw/engines/overlay/overlay_wireframe.c
+++ b/source/blender/draw/engines/overlay/overlay_wireframe.c
@@ -64,19 +64,17 @@ void OVERLAY_wireframe_cache_init(OVERLAY_Data *vedata)
OVERLAY_shader_wireframe();
for (int xray = 0; xray < 2; xray++) {
- DRWState state = DRW_STATE_FIRST_VERTEX_CONVENTION;
+ DRWState state = DRW_STATE_FIRST_VERTEX_CONVENTION | DRW_STATE_WRITE_COLOR |
+ DRW_STATE_WRITE_DEPTH | DRW_STATE_DEPTH_LESS_EQUAL;
DRWPass *pass;
uint stencil_mask;
if (xray == 0) {
- state |= DRW_STATE_WRITE_COLOR | DRW_STATE_WRITE_DEPTH | DRW_STATE_DEPTH_LESS_EQUAL |
- DRW_STATE_STENCIL_EQUAL;
- DRW_PASS_CREATE(psl->wireframe_ps, state | pd->clipping_state);
+ DRW_PASS_CREATE(psl->wireframe_ps, state | pd->clipping_state | DRW_STATE_STENCIL_EQUAL);
pass = psl->wireframe_ps;
stencil_mask = 0xFF;
}
else {
- state |= DRW_STATE_WRITE_DEPTH | DRW_STATE_DEPTH_LESS_EQUAL;
DRW_PASS_CREATE(psl->wireframe_xray_ps, state | pd->clipping_state);
pass = psl->wireframe_xray_ps;
stencil_mask = 0x00;
More information about the Bf-blender-cvs
mailing list