[Bf-blender-cvs] [501489c55ef] lanpr-under-gp: LineArt: Disable modifier when source/target isn't properly set
YimingWu
noreply at git.blender.org
Wed Jul 15 17:21:29 CEST 2020
Commit: 501489c55ef51256b0300b13c03f8d4d82d90043
Author: YimingWu
Date: Wed Jul 15 23:21:23 2020 +0800
Branches: lanpr-under-gp
https://developer.blender.org/rB501489c55ef51256b0300b13c03f8d4d82d90043
LineArt: Disable modifier when source/target isn't properly set
===================================================================
M source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
===================================================================
diff --git a/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c b/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
index 0b150079a04..ff51d986b18 100644
--- a/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
+++ b/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
@@ -192,6 +192,25 @@ static void bakeModifier(Main *UNUSED(bmain),
generate_strokes_actual(md, depsgraph, ob, gpl, gpf);
}
+static bool *isDisabled(GpencilModifierData *md, int UNUSED(userRenderParams))
+{
+ LineartGpencilModifierData *lmd = (LineartGpencilModifierData *)md;
+
+ if (!lmd->target_layer || !lmd->target_material) {
+ return true;
+ }
+
+ if (lmd->source_type == LRT_SOURCE_OBJECT && !lmd->source_object) {
+ return true;
+ }
+
+ if (lmd->source_type == LRT_SOURCE_COLLECTION && !lmd->source_collection) {
+ return true;
+ }
+
+ return false;
+}
+
static void updateDepsgraph(GpencilModifierData *md,
const ModifierUpdateDepsgraphContext *ctx,
const int mode)
@@ -329,7 +348,7 @@ GpencilModifierTypeInfo modifierType_Gpencil_Lineart = {
/* initData */ initData,
/* freeData */ freeData,
- /* isDisabled */ NULL,
+ /* isDisabled */ isDisabled,
/* updateDepsgraph */ updateDepsgraph,
/* dependsOnTime */ NULL,
/* foreachObjectLink */ foreachObjectLink,
More information about the Bf-blender-cvs
mailing list