diff options
Diffstat (limited to 'source/blender/modifiers/intern/MOD_dynamicpaint.c')
-rw-r--r-- | source/blender/modifiers/intern/MOD_dynamicpaint.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/source/blender/modifiers/intern/MOD_dynamicpaint.c b/source/blender/modifiers/intern/MOD_dynamicpaint.c index 440b4677411..b69179f464d 100644 --- a/source/blender/modifiers/intern/MOD_dynamicpaint.c +++ b/source/blender/modifiers/intern/MOD_dynamicpaint.c @@ -19,12 +19,14 @@ */ #include <stddef.h> +#include <string.h> #include "BLI_listbase.h" #include "BLI_utildefines.h" #include "BLT_translation.h" +#include "DNA_defaults.h" #include "DNA_dynamicpaint_types.h" #include "DNA_mesh_types.h" #include "DNA_object_force_types.h" @@ -57,9 +59,9 @@ static void initData(ModifierData *md) { DynamicPaintModifierData *pmd = (DynamicPaintModifierData *)md; - pmd->canvas = NULL; - pmd->brush = NULL; - pmd->type = MOD_DYNAMICPAINT_TYPE_CANVAS; + BLI_assert(MEMCMP_STRUCT_AFTER_IS_ZERO(pmd, modifier)); + + MEMCPY_STRUCT_AFTER(pmd, DNA_struct_default_get(DynamicPaintModifierData), modifier); } static void copyData(const ModifierData *md, ModifierData *target, const int flag) @@ -203,10 +205,12 @@ ModifierTypeInfo modifierType_DynamicPaint = { /* name */ "Dynamic Paint", /* structName */ "DynamicPaintModifierData", /* structSize */ sizeof(DynamicPaintModifierData), + /* srna */ &RNA_DynamicPaintModifier, /* type */ eModifierTypeType_Constructive, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | eModifierTypeFlag_UsesPointCache | eModifierTypeFlag_Single | eModifierTypeFlag_UsesPreview, + /* icon */ ICON_MOD_DYNAMICPAINT, /* copyData */ copyData, @@ -226,7 +230,6 @@ ModifierTypeInfo modifierType_DynamicPaint = { /* updateDepsgraph */ updateDepsgraph, /* dependsOnTime */ dependsOnTime, /* dependsOnNormals */ NULL, - /* foreachObjectLink */ NULL, /* foreachIDLink */ foreachIDLink, /* foreachTexLink */ foreachTexLink, /* freeRuntimeData */ freeRuntimeData, |