Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c')
-rw-r--r--source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c37
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));
}
}
}