Blender Git Commit Log

Git Commits -> Revision 0e90627

December 7, 2018, 15:57 (GMT)
Cleanup/refactor binding code for MeshDeform modifier.

We had two different ways of doing it, SurfaceDeform and LaplacianDeform
would do it through a special modifier stack evaluation triggered from
binding operator, while MeshDeform would do it through a regular
depsgraph update/eval (also triggered from its binding op).

This enforces the later to search back for orig modifier data inside
modifier code (to apply binding on that one, and not on useless CoW
one).

Besides the question of safety about modifying orig data from threaded
despgraph (that was *probably* OK, but think it's bad idea in general),
it's much better to have a common way of doing that kind of things.

For now it remains rather dodgy, but at least it's reasonably consistent
and safe now.

This commit also fixes a potential memleak from binding process of
MeshDeform, and does some general cleanup a bit.

Commit Details:

Full Hash: 0e906278616e6e092c8182604bf82ec693ce791a
Parent Commit: 3323693
Committed By: Charlie Jolly
Lines Changed: +54, -61

6 Modified Paths:

/source/blender/editors/armature/meshlaplacian.c (+3, -3) (Diff)
/source/blender/editors/include/ED_armature.h (+0, -1) (Diff)
/source/blender/editors/object/object_modifier.c (+19, -30) (Diff)
/source/blender/makesdna/DNA_modifier_types.h (+1, -1) (Diff)
/source/blender/modifiers/intern/MOD_meshdeform.c (+30, -25) (Diff)
/source/blender/modifiers/intern/MOD_surfacedeform.c (+1, -1) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021