Blender Git Loki
Git Commits -> Revision 989fbff
Revision 989fbff by Bastien Montagne (master) December 7, 2018, 10:22 (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: 989fbff16f49204ca31a67f56f87c2221e0246f4
Parent Commit: 41e4059
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)
/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)