[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [14931] trunk/blender/source/blender/ blenkernel/intern:

Brecht Van Lommel brechtvanlommel at pandora.be
Thu May 22 19:06:48 CEST 2008


Revision: 14931
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=14931
Author:   blendix
Date:     2008-05-22 19:06:46 +0200 (Thu, 22 May 2008)

Log Message:
-----------

Fix for bug #11698: mesh deform modifier not working on extruded curves.
The modifier work on the tesselated result rather than the curve itself.

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

Modified: trunk/blender/source/blender/blenkernel/intern/displist.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/displist.c	2008-05-22 15:30:35 UTC (rev 14930)
+++ trunk/blender/source/blender/blenkernel/intern/displist.c	2008-05-22 17:06:46 UTC (rev 14931)
@@ -1171,7 +1171,7 @@
 		if ((md->mode & required_mode) != required_mode) continue;
 		if (mti->isDisabled && mti->isDisabled(md)) continue;
 
-		if (md->type==eModifierType_Hook || md->type==eModifierType_Softbody) {
+		if (ELEM3(md->type, eModifierType_Hook, eModifierType_Softbody, eModifierType_MeshDeform)) {
 			preTesselatePoint  = md;
 		}
 	}

Modified: trunk/blender/source/blender/blenkernel/intern/modifier.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/modifier.c	2008-05-22 15:30:35 UTC (rev 14930)
+++ trunk/blender/source/blender/blenkernel/intern/modifier.c	2008-05-22 17:06:46 UTC (rev 14931)
@@ -6850,9 +6850,17 @@
 	Mat3CpyMat4(icagemat, iobmat);
 
 	/* bind weights if needed */
-	if(!mmd->bindcos)
-		harmonic_coordinates_bind(mmd, vertexCos, numVerts, cagemat);
+	if(!mmd->bindcos) {
+		static int recursive = 0;
 
+		/* progress bar redraw can make this recursive .. */
+		if(!recursive) {
+			recursive = 1;
+			harmonic_coordinates_bind(mmd, vertexCos, numVerts, cagemat);
+			recursive = 0;
+		}
+	}
+
 	/* verify we have compatible weights */
 	totvert= numVerts;
 	totcagevert= cagedm->getNumVerts(cagedm);





More information about the Bf-blender-cvs mailing list