[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