[Bf-blender-cvs] [8c310227d2c] greasepencil-object: Cleaun: Add clamp to keep zdepth in valid range

Antonio Vazquez noreply at git.blender.org
Mon Jun 19 10:12:25 CEST 2017


Commit: 8c310227d2ca5e78ed82a7f5ddf8d43493fd987a
Author: Antonio Vazquez
Date:   Mon Jun 19 10:12:17 2017 +0200
Branches: greasepencil-object
https://developer.blender.org/rB8c310227d2ca5e78ed82a7f5ddf8d43493fd987a

Cleaun: Add clamp to keep zdepth in valid range

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

M	source/blender/draw/engines/gpencil/shaders/gpencil_fill_frag.glsl
M	source/blender/draw/engines/gpencil/shaders/gpencil_stroke_geom.glsl

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

diff --git a/source/blender/draw/engines/gpencil/shaders/gpencil_fill_frag.glsl b/source/blender/draw/engines/gpencil/shaders/gpencil_fill_frag.glsl
index 64b95791713..26f52c964b0 100644
--- a/source/blender/draw/engines/gpencil/shaders/gpencil_fill_frag.glsl
+++ b/source/blender/draw/engines/gpencil/shaders/gpencil_fill_frag.glsl
@@ -206,7 +206,7 @@ void main()
 		else {
 			factor = ZFIGHT_SHIFT_LOW;
 		}
-		gl_FragDepth = gl_FragCoord.z - (sort * factor);
+		gl_FragDepth = clamp(gl_FragCoord.z - (sort * factor), 0.0, 1.0);
 	}
 	if  (xraymode == GP_XRAY_BACK) {
 		gl_FragDepth = 1.0;
diff --git a/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_geom.glsl b/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_geom.glsl
index 0cd78ef2076..0f04cc94ca9 100644
--- a/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_geom.glsl
+++ b/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_geom.glsl
@@ -48,7 +48,7 @@ float getZdepth(vec4 point)
 		else {
 			factor = ZFIGHT_SHIFT_LOW;
 		}
-		return (point.z / point.w)  - ((sort + ZFIGHT_HALF_STEP) * factor);
+		return clamp((point.z / point.w)  - ((sort + ZFIGHT_HALF_STEP) * factor), 0.0, 1.0);
 	}
 	if  (xraymode == GP_XRAY_BACK) {
 		return 1.0;




More information about the Bf-blender-cvs mailing list