diff options
author | Antonioya <blendergit@gmail.com> | 2018-08-08 14:37:56 +0300 |
---|---|---|
committer | Antonioya <blendergit@gmail.com> | 2018-08-08 14:37:56 +0300 |
commit | 78a6fa1a7294d73a4f35b08d569d03f1afdd71ac (patch) | |
tree | b267e9c13697524c2f3deb12691991a9a0648654 /source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c | |
parent | 08e49c034b318fa430f2b783b3a3fac089da5f9b (diff) |
Cleanup: Move some duplicate code to new function
Diffstat (limited to 'source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c')
-rw-r--r-- | source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c | 37 |
1 files changed, 2 insertions, 35 deletions
diff --git a/source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c b/source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c index b2df49a8d06..4c087577699 100644 --- a/source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c +++ b/source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c @@ -122,41 +122,8 @@ static void bakeModifier( deformStroke(md, depsgraph, ob, gpl, gps); - /* look for color */ - if (mmd->flag & GP_COLOR_CREATE_COLORS) { - Material *newmat = BLI_ghash_lookup(gh_color, mat->id.name); - if (newmat == NULL) { - BKE_object_material_slot_add(bmain, ob); - newmat = BKE_material_copy(bmain, mat); - newmat->preview = NULL; - - assign_material(bmain, ob, newmat, ob->totcol, BKE_MAT_ASSIGN_USERPREF); - - copy_v4_v4(newmat->gp_style->stroke_rgba, gps->runtime.tmp_stroke_rgba); - copy_v4_v4(newmat->gp_style->fill_rgba, gps->runtime.tmp_fill_rgba); - - BLI_ghash_insert(gh_color, mat->id.name, newmat); - DEG_id_tag_update(&newmat->id, DEG_TAG_COPY_ON_WRITE); - } - /* reasign color index */ - int idx = BKE_object_material_slot_find_index(ob, newmat); - gps->mat_nr = idx - 1; - } - else { - /* reuse existing color (but update only first time) */ - if (BLI_ghash_lookup(gh_color, mat->id.name) == NULL) { - copy_v4_v4(gp_style->stroke_rgba, gps->runtime.tmp_stroke_rgba); - copy_v4_v4(gp_style->fill_rgba, gps->runtime.tmp_fill_rgba); - BLI_ghash_insert(gh_color, mat->id.name, mat); - } - /* update previews (icon and thumbnail) */ - if (mat->preview != NULL) { - mat->preview->flag[ICON_SIZE_ICON] |= PRV_CHANGED; - mat->preview->flag[ICON_SIZE_PREVIEW] |= PRV_CHANGED; - } - DEG_id_tag_update(&mat->id, DEG_TAG_COPY_ON_WRITE); - } - + gpencil_apply_modifier_material(bmain, ob, mat, gh_color, gps, + (bool)(mmd->flag & GP_COLOR_CREATE_COLORS)); } } } |