diff options
author | Bastien Montagne <mont29> | 2022-05-16 17:00:00 +0300 |
---|---|---|
committer | Bastien Montagne <bastien@blender.org> | 2022-05-16 17:56:27 +0300 |
commit | 68d203af0bfbdf132604b5b2541e6f1fe9c49764 (patch) | |
tree | a3cef5602e2dc649ce32d90f2ea8e82cccbe0d8a /source/blender/modifiers/intern/MOD_meshdeform.c | |
parent | f1beb3b3f60be45854285935d6bfcedf839b317c (diff) |
Refactor modifiers writing code.
This changes is needed to give more control to modifiers' writing
callback when defined. It will allow to implement better culling of
needless data when writing e.g. modifiers from library overrides.
Ref. T97967.
Reviewed By: brecht, JacquesLucke
Differential Revision: https://developer.blender.org/D14939
Diffstat (limited to 'source/blender/modifiers/intern/MOD_meshdeform.c')
-rw-r--r-- | source/blender/modifiers/intern/MOD_meshdeform.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/source/blender/modifiers/intern/MOD_meshdeform.c b/source/blender/modifiers/intern/MOD_meshdeform.c index c2e9e5ebe7d..84df93b00bf 100644 --- a/source/blender/modifiers/intern/MOD_meshdeform.c +++ b/source/blender/modifiers/intern/MOD_meshdeform.c @@ -581,11 +581,13 @@ static void panelRegister(ARegionType *region_type) modifier_panel_register(region_type, eModifierType_MeshDeform, panel_draw); } -static void blendWrite(BlendWriter *writer, const ModifierData *md) +static void blendWrite(BlendWriter *writer, const ID *UNUSED(id_owner), const ModifierData *md) { MeshDeformModifierData *mmd = (MeshDeformModifierData *)md; int size = mmd->dyngridsize; + BLO_write_struct(writer, MeshDeformModifierData, mmd); + BLO_write_struct_array(writer, MDefInfluence, mmd->influences_num, mmd->bindinfluences); /* NOTE: `bindoffset` is abusing `verts_num + 1` as its size, this becomes an incorrect value in |