[Bf-blender-cvs] [36eef07e3b5] greasepencil-object: Fix UV scale for stroke endcaps

Antonio Vazquez noreply at git.blender.org
Fri Feb 16 19:06:51 CET 2018


Commit: 36eef07e3b5fa489ac869f75c35585db89189924
Author: Antonio Vazquez
Date:   Fri Feb 16 19:06:33 2018 +0100
Branches: greasepencil-object
https://developer.blender.org/rB36eef07e3b5fa489ac869f75c35585db89189924

Fix UV scale for stroke endcaps

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

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

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

diff --git a/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_frag.glsl b/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_frag.glsl
index 1eec39dd97b..ef9e5e4c1d6 100644
--- a/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_frag.glsl
+++ b/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_frag.glsl
@@ -15,13 +15,13 @@ out vec4 fragColor;
 
 void main()
 {
-	const vec2 center = vec2(0, 0.5);
+	const vec2 center = vec2(0, 1.0);
 	vec4 tColor = vec4(mColor);
 	/* if alpha < 0, then encap */
 	if (mColor.a < 0) {
 		tColor.a = tColor.a * -1.0;
 		float dist = length(mTexCoord - center);
-		if (dist > 0.25) {
+		if (dist > 0.50) {
 			discard;
 		}
 	}
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 eebe1605cfa..6cce2564de0 100644
--- a/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_geom.glsl
+++ b/source/blender/draw/engines/gpencil/shaders/gpencil_stroke_geom.glsl
@@ -135,7 +135,7 @@ void main(void)
 
 	/* generate the start endcap (alpha < 0 used as endcap flag)*/
 	if (P0 == P2) {
-		mTexCoord = vec2(1, 0.5);
+		mTexCoord = vec2(2, 1);
 		mColor = vec4(finalColor[1].rgb, finalColor[1].a * -1.0) ;
 		vec2 svn1 =  normalize(sp1 - sp2) * length_a * 4.0;
 		gl_Position = vec4((sp1 + svn1) / Viewport, getZdepth(P1), 1.0);
@@ -146,7 +146,7 @@ void main(void)
 		gl_Position = vec4((sp1 - (length_a * 2.0) * miter_a) / Viewport, getZdepth(P1), 1.0);
 		EmitVertex();
 
-		mTexCoord = vec2(0, 1);
+		mTexCoord = vec2(0, 2);
 		mColor = vec4(finalColor[1].rgb, finalColor[1].a * -1.0) ;
 		gl_Position = vec4((sp1 + (length_a * 2.0) * miter_a) / Viewport, getZdepth(P1), 1.0);
 		EmitVertex();
@@ -175,7 +175,7 @@ void main(void)
 
 	/* generate the end endcap (alpha < 0 used as endcap flag)*/
 	if (P1 == P3) {
-		mTexCoord = vec2(0, 1);
+		mTexCoord = vec2(0, 2);
 		mColor = vec4(finalColor[2].rgb, finalColor[2].a * -1.0) ;
 		gl_Position = vec4((sp2 + (length_b * 2.0) * miter_b) / Viewport, getZdepth(P2), 1.0);
 		EmitVertex();
@@ -185,7 +185,7 @@ void main(void)
 		gl_Position = vec4((sp2 - (length_b * 2.0) * miter_b) / Viewport, getZdepth(P2), 1.0);
 		EmitVertex();
 
-		mTexCoord = vec2(1, 0.5);
+		mTexCoord = vec2(2, 1);
 		mColor = vec4(finalColor[2].rgb, finalColor[2].a * -1.0) ;
 		vec2 svn2 =  normalize(sp2 - sp1) * length_b * 4.0;
 		gl_Position = vec4((sp2 + svn2) / Viewport, getZdepth(P2), 1.0);



More information about the Bf-blender-cvs mailing list