diff options
author | Falk David <falkdavid@gmx.de> | 2021-02-01 18:25:44 +0300 |
---|---|---|
committer | Falk David <falkdavid@gmx.de> | 2021-02-01 18:26:31 +0300 |
commit | 006e70dbd7e29c105809eded93169754ade03de5 (patch) | |
tree | bf40ac50199d818b7a013d6ad2f9e2d0ea6f7fd0 /source/blender/editors/gpencil/gpencil_fill.c | |
parent | c02f2d7371a11d1d0c575b42dc7dd790926a0877 (diff) |
Fix T85203: GPencil: Drawing on locked axis plane
Drawing on e.g. the X-Z plane was broken due to an earlier
commit (rBef28da262342). This was causing the projection when drawing
on an axis plane to fail.
The fix checks that the user is in view plane projection mode.
Reviewed By: antoniov
Maniphest Tasks: T85203
Differential Revision: https://developer.blender.org/D10252
Diffstat (limited to 'source/blender/editors/gpencil/gpencil_fill.c')
-rw-r--r-- | source/blender/editors/gpencil/gpencil_fill.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/source/blender/editors/gpencil/gpencil_fill.c b/source/blender/editors/gpencil/gpencil_fill.c index 3c16a6fb028..8bd0b2f86de 100644 --- a/source/blender/editors/gpencil/gpencil_fill.c +++ b/source/blender/editors/gpencil/gpencil_fill.c @@ -1155,8 +1155,9 @@ static void gpencil_stroke_from_buffer(tGPDfill *tgpf) ToolSettings *ts = tgpf->scene->toolsettings; const char align_flag = ts->gpencil_v3d_align; const bool is_depth = (bool)(align_flag & (GP_PROJECT_DEPTH_VIEW | GP_PROJECT_DEPTH_STROKE)); - const bool is_camera = (bool)(ts->gp_sculpt.lock_axis == 0) && - (tgpf->rv3d->persp == RV3D_CAMOB) && (!is_depth); + const bool is_lock_axis_view = (bool)(ts->gp_sculpt.lock_axis == 0); + const bool is_camera = is_lock_axis_view && (tgpf->rv3d->persp == RV3D_CAMOB) && (!is_depth); + Brush *brush = BKE_paint_brush(&ts->gp_paint->paint); if (brush == NULL) { return; @@ -1284,7 +1285,7 @@ static void gpencil_stroke_from_buffer(tGPDfill *tgpf) } /* If camera view or view projection, reproject flat to view to avoid perspective effect. */ - if ((align_flag & GP_PROJECT_VIEWSPACE) || is_camera) { + if (((align_flag & GP_PROJECT_VIEWSPACE) && is_lock_axis_view) || is_camera) { ED_gpencil_project_stroke_to_view(tgpf->C, tgpf->gpl, gps); } |