[Bf-blender-cvs] [6ae34bb0714] master: Fix drawing annotations on surface

Germano Cavalcante noreply at git.blender.org
Mon Nov 29 13:45:03 CET 2021


Commit: 6ae34bb0714859d9ef0b7fa2aceb16b4531df48f
Author: Germano Cavalcante
Date:   Mon Nov 29 09:43:33 2021 -0300
Branches: master
https://developer.blender.org/rB6ae34bb0714859d9ef0b7fa2aceb16b4531df48f

Fix drawing annotations on surface

Caused by {rBaa0ac0035a0d}.

Similar solution to {rBc0fdaf700a5}.

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

M	source/blender/editors/gpencil/annotate_paint.c

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

diff --git a/source/blender/editors/gpencil/annotate_paint.c b/source/blender/editors/gpencil/annotate_paint.c
index 47af2cff0ce..fbc44ed58d8 100644
--- a/source/blender/editors/gpencil/annotate_paint.c
+++ b/source/blender/editors/gpencil/annotate_paint.c
@@ -1666,6 +1666,7 @@ static void annotation_paint_initstroke(tGPsdata *p,
 static void annotation_paint_strokeend(tGPsdata *p)
 {
   ToolSettings *ts = p->scene->toolsettings;
+  const bool is_eraser = (p->gpd->runtime.sbuffer_sflag & GP_STROKE_ERASER) != 0;
   /* for surface sketching, need to set the right OpenGL context stuff so that
    * the conversions will project the values correctly...
    */
@@ -1681,11 +1682,11 @@ static void annotation_paint_strokeend(tGPsdata *p)
                              (ts->annotate_v3d_align & GP_PROJECT_DEPTH_STROKE) ?
                                  V3D_DEPTH_GPENCIL_ONLY :
                                  V3D_DEPTH_NO_GPENCIL,
-                             NULL);
+                             is_eraser ? NULL : &p->depths);
   }
 
   /* check if doing eraser or not */
-  if ((p->gpd->runtime.sbuffer_sflag & GP_STROKE_ERASER) == 0) {
+  if (!is_eraser) {
     /* transfer stroke to frame */
     annotation_stroke_newfrombuffer(p);
   }



More information about the Bf-blender-cvs mailing list