diff options
Diffstat (limited to 'source/blender/gpencil_modifiers/intern/MOD_gpencilopacity.c')
-rw-r--r-- | source/blender/gpencil_modifiers/intern/MOD_gpencilopacity.c | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/source/blender/gpencil_modifiers/intern/MOD_gpencilopacity.c b/source/blender/gpencil_modifiers/intern/MOD_gpencilopacity.c index fb75b1e99ac..7ba6443b2b2 100644 --- a/source/blender/gpencil_modifiers/intern/MOD_gpencilopacity.c +++ b/source/blender/gpencil_modifiers/intern/MOD_gpencilopacity.c @@ -85,12 +85,12 @@ static void copyData(const GpencilModifierData *md, GpencilModifierData *target) } /* opacity strokes */ -static void deformStroke(GpencilModifierData *md, - Depsgraph *UNUSED(depsgraph), - Object *ob, - bGPDlayer *gpl, - bGPDframe *UNUSED(gpf), - bGPDstroke *gps) +static void deformPolyline(GpencilModifierData *md, + Depsgraph *UNUSED(depsgraph), + Object *ob, + bGPDlayer *gpl, + bGPDframe *UNUSED(gpf), + bGPDstroke *gps) { OpacityGpencilModifierData *mmd = (OpacityGpencilModifierData *)md; const int def_nr = BKE_object_defgroup_name_index(ob, mmd->vgname); @@ -192,6 +192,18 @@ static void deformStroke(GpencilModifierData *md, } } +/* Deform Bezier. */ +static void deformBezier(GpencilModifierData *md, + Depsgraph *depsgraph, + Object *ob, + bGPDlayer *gpl, + bGPDframe *gpf, + bGPDstroke *gps) +{ + /* Reuse deformPolyline because the changes are not affecting the geometry. */ + deformPolyline(md, depsgraph, ob, gpl, gpf, gps); +} + static void bakeModifier(Main *UNUSED(bmain), Depsgraph *depsgraph, GpencilModifierData *md, @@ -202,7 +214,7 @@ static void bakeModifier(Main *UNUSED(bmain), LISTBASE_FOREACH (bGPDlayer *, gpl, &gpd->layers) { LISTBASE_FOREACH (bGPDframe *, gpf, &gpl->frames) { LISTBASE_FOREACH (bGPDstroke *, gps, &gpf->strokes) { - deformStroke(md, depsgraph, ob, gpl, gpf, gps); + deformPolyline(md, depsgraph, ob, gpl, gpf, gps); } } } @@ -313,7 +325,8 @@ GpencilModifierTypeInfo modifierType_Gpencil_Opacity = { /* copyData */ copyData, - /* deformStroke */ deformStroke, + /* deformPolyline */ deformPolyline, + /* deformBezier */ deformBezier, /* generateStrokes */ NULL, /* bakeModifier */ bakeModifier, /* remapTime */ NULL, |