Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Gavrilov <angavrilov@gmail.com>2019-11-30 19:07:44 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2019-12-03 12:42:28 +0300
commit893c29c15ca2fd95de79e9390b5650aaeabc999f (patch)
treeba31421450ed754a18801605e1c4f8bd33c3e584
parent54bff9dc8972240d2683c58e31d21ce9324003a4 (diff)
Fix T71213: Mask or Mirror before Armature breaks weight paint.
This is a revert of a small fraction of commit rB5e332fd700 that introduced the issue according to bisect. Doing a break here is wrong, because BKE_crazyspace_build_sculpt assumes that processing stopped at the first deform modifier without deformMatrices, and thus skips all modifiers until it finds one like that. Thus this early loop exit makes the behavior worse, as instead of skipping just Mask and Mirror, it skips all.
-rw-r--r--source/blender/blenkernel/intern/crazyspace.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/blenkernel/intern/crazyspace.c b/source/blender/blenkernel/intern/crazyspace.c
index f2ed84b4125..8f25feedff9 100644
--- a/source/blender/blenkernel/intern/crazyspace.c
+++ b/source/blender/blenkernel/intern/crazyspace.c
@@ -415,12 +415,12 @@ int BKE_sculpt_get_first_deform_matrices(struct Depsgraph *depsgraph,
mti->deformMatrices(md, &mectx, me_eval, deformedVerts, defmats, me_eval->totvert);
}
else {
+ /* More complex handling will continue in BKE_crazyspace_build_sculpt.
+ * Exiting the loop on a non-deform modifier causes issues - T71213. */
+ BLI_assert(crazyspace_modifier_supports_deform(md));
break;
}
}
- else {
- break;
- }
}
for (; md; md = md->next) {