[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [28381] trunk/blender/source/blender/ blenkernel/intern/armature.c: Bugfix #22101: Envelopes dont respect armature modifier vertex group mask

Joshua Leung aligorith at gmail.com
Fri Apr 23 14:11:56 CEST 2010


Revision: 28381
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=28381
Author:   aligorith
Date:     2010-04-23 14:11:56 +0200 (Fri, 23 Apr 2010)

Log Message:
-----------
Bugfix #22101: Envelopes dont respect armature modifier vertex group mask

Changed the point where the vertex groups are retrieved. Hopefully this commit doesn't break any cases I haven't thought of...

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/armature.c

Modified: trunk/blender/source/blender/blenkernel/intern/armature.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/armature.c	2010-04-23 11:57:45 UTC (rev 28380)
+++ trunk/blender/source/blender/blenkernel/intern/armature.c	2010-04-23 12:11:56 UTC (rev 28381)
@@ -958,23 +958,26 @@
 
 	/* get the def_nr for the overall armature vertex group if present */
 	armature_def_nr= defgroup_name_index(target, defgrp_name);
-
+	
+	if(ELEM(target->type, OB_MESH, OB_LATTICE)) {
+		numGroups = BLI_countlist(&target->defbase);
+		
+		if(target->type==OB_MESH) {
+			Mesh *me= target->data;
+			dverts = me->dvert;
+			target_totvert = me->totvert;
+		}
+		else {
+			Lattice *lt= target->data;
+			dverts = lt->dvert;
+			if(dverts)
+				target_totvert = lt->pntsu*lt->pntsv*lt->pntsw;
+		}
+	}
+	
 	/* get a vertex-deform-index to posechannel array */
 	if(deformflag & ARM_DEF_VGROUP) {
 		if(ELEM(target->type, OB_MESH, OB_LATTICE)) {
-			numGroups = BLI_countlist(&target->defbase);
-			
-			if(target->type==OB_MESH) {
-				Mesh *me= target->data;
-				dverts = me->dvert;
-				target_totvert = me->totvert;
-			}
-			else {
-				Lattice *lt= target->data;
-				dverts = lt->dvert;
-				if(dverts)
-					target_totvert = lt->pntsu*lt->pntsv*lt->pntsw;
-			}
 			/* if we have a DerivedMesh, only use dverts if it has them */
 			if(dm)
 				if(dm->getVertData(dm, 0, CD_MDEFORMVERT))





More information about the Bf-blender-cvs mailing list