[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [34846] trunk/blender/source/blender/ editors/util/crazyspace.c: First modifiers with deformMatrices callback used to be applied twice when
Sergey Sharybin
g.ulairi at gmail.com
Mon Feb 14 17:06:16 CET 2011
Revision: 34846
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=34846
Author: nazgul
Date: 2011-02-14 16:06:15 +0000 (Mon, 14 Feb 2011)
Log Message:
-----------
First modifiers with deformMatrices callback used to be applied twice when
building crazytspace. Not sure why this worked.
Modified Paths:
--------------
trunk/blender/source/blender/editors/util/crazyspace.c
Modified: trunk/blender/source/blender/editors/util/crazyspace.c
===================================================================
--- trunk/blender/source/blender/editors/util/crazyspace.c 2011-02-14 14:32:49 UTC (rev 34845)
+++ trunk/blender/source/blender/editors/util/crazyspace.c 2011-02-14 16:06:15 UTC (rev 34846)
@@ -363,7 +363,7 @@
float (*deformedVerts)[3]= *deformcos;
float (*origVerts)[3]= MEM_dupallocN(deformedVerts);
float *quats= NULL;
- int i;
+ int i, deformed= 0;
ModifierData *md= modifiers_getVirtualModifierList(ob);
Mesh *me= (Mesh*)ob->data;
@@ -372,8 +372,15 @@
if(!modifier_isEnabled(scene, md, eModifierMode_Realtime)) continue;
- if(mti->type==eModifierTypeType_OnlyDeform)
+ if(mti->type==eModifierTypeType_OnlyDeform) {
+ /* skip leading modifiers which have been alredy
+ handled in sculpt_get_first_deform_matrices */
+ if(mti->deformMatrices && !deformed)
+ continue;
+
mti->deformVerts(md, ob, NULL, deformedVerts, me->totvert, 0, 0);
+ deformed= 1;
+ }
}
quats= MEM_mallocN(me->totvert*sizeof(float)*4, "crazy quats");
More information about the Bf-blender-cvs
mailing list