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:
authorSergey Sharybin <sergey.vfx@gmail.com>2012-05-01 16:14:44 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2012-05-01 16:14:44 +0400
commit8bd5648ce5fcae13b7dccfd50ae51ff49dffc637 (patch)
tree6c54a75174c504b3d5156f9c66ef8872dd90754a /source/blender/blenkernel
parent2f38f09c38277f024ddbd821c5407866c9bd35ab (diff)
Fox #31185: Cannot sculpt shape keys
Was related on sculpting on locked keys. Issue was caused by building PBVH from base mesh which is now doesn't have shape key loaded into it as it was in 2.62. Fixed by loading coordinates from deformed mesh into PBVH like it happens for on-locked shape keys.
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r--source/blender/blenkernel/intern/cdderivedmesh.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/cdderivedmesh.c b/source/blender/blenkernel/intern/cdderivedmesh.c
index 6ff612e3367..2bf199cb47f 100644
--- a/source/blender/blenkernel/intern/cdderivedmesh.c
+++ b/source/blender/blenkernel/intern/cdderivedmesh.c
@@ -267,6 +267,8 @@ static struct PBVH *cdDM_getPBVH(Object *ob, DerivedMesh *dm)
if (!cddm->pbvh && ob->type == OB_MESH) {
SculptSession *ss= ob->sculpt;
Mesh *me= ob->data;
+ int deformed = 0;
+
cddm->pbvh = BLI_pbvh_new();
cddm->pbvh_draw = can_pbvh_draw(ob, dm);
@@ -275,7 +277,9 @@ static struct PBVH *cdDM_getPBVH(Object *ob, DerivedMesh *dm)
BLI_pbvh_build_mesh(cddm->pbvh, me->mface, me->mvert,
me->totface, me->totvert);
- if (ss->modifiers_active && ob->derivedDeform) {
+ deformed = ss->modifiers_active || me->key;
+
+ if (deformed && ob->derivedDeform) {
DerivedMesh *deformdm= ob->derivedDeform;
float (*vertCos)[3];
int totvert;