[Bf-blender-cvs] [3c02e648f39] blender-v2.93-release: GPencil: Fix unreported random rotation for single point with texture

Antonio Vazquez noreply at git.blender.org
Sat May 29 15:29:25 CEST 2021


Commit: 3c02e648f395f8b37eecc70e7abc2ce05528c09f
Author: Antonio Vazquez
Date:   Fri May 28 17:14:01 2021 +0200
Branches: blender-v2.93-release
https://developer.blender.org/rB3c02e648f395f8b37eecc70e7abc2ce05528c09f

GPencil: Fix unreported random rotation for single point with texture

When using ``Path`` alignment, if the stroke has one point the texture rotates randomly when move the viewport. This was because with one point is impossible to calculate a path.

Now, if the stroke has only one point, the texture for this stroke is aligned to Object.

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

M	source/blender/draw/engines/gpencil/shaders/gpencil_common_lib.glsl

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

diff --git a/source/blender/draw/engines/gpencil/shaders/gpencil_common_lib.glsl b/source/blender/draw/engines/gpencil/shaders/gpencil_common_lib.glsl
index 7412959a30b..ac48b94fea9 100644
--- a/source/blender/draw/engines/gpencil/shaders/gpencil_common_lib.glsl
+++ b/source/blender/draw/engines/gpencil/shaders/gpencil_common_lib.glsl
@@ -442,6 +442,10 @@ void stroke_vertex()
   if (is_dot) {
 #  ifdef GP_MATERIAL_BUFFER_LEN
     int alignement = GP_FLAG(m) & GP_STROKE_ALIGNMENT;
+    /* For one point strokes use object aligment. */
+    if (ma.x == -1 && ma2.x == -1 && alignement == GP_STROKE_ALIGNMENT_STROKE) {
+      alignement = GP_STROKE_ALIGNMENT_OBJECT;
+    }
 #  endif
 
     vec2 x_axis;



More information about the Bf-blender-cvs mailing list