[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [13465] trunk/blender/source/blender: Cloth: Bugfix: 1.

Daniel Genrich daniel.genrich at gmx.net
Wed Jan 30 03:05:39 CET 2008


Revision: 13465
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=13465
Author:   genscher
Date:     2008-01-30 03:05:37 +0100 (Wed, 30 Jan 2008)

Log Message:
-----------
Cloth: Bugfix: 1. Kicking esc again, 2. Collision modifier needed to be updated when going backward in time, 3. GUI change when no bullet there

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/cloth.c
    trunk/blender/source/blender/blenkernel/intern/implicit.c
    trunk/blender/source/blender/blenkernel/intern/modifier.c
    trunk/blender/source/blender/src/buttons_object.c

Modified: trunk/blender/source/blender/blenkernel/intern/cloth.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/cloth.c	2008-01-29 23:17:11 UTC (rev 13464)
+++ trunk/blender/source/blender/blenkernel/intern/cloth.c	2008-01-30 02:05:37 UTC (rev 13465)
@@ -526,6 +526,9 @@
 			if(G.rt > 0)
 				printf("cloth_read_cache problem: lnex - f#: %f, lastCF: %d\n", framenr, clmd->sim_parms->lastcachedframe);
 		}
+		
+		if(G.rt > 0)
+			printf("cloth_read_cache: %f successfully \n", framenr);
 	}
 	
 	if(G.rt > 0)
@@ -647,7 +650,7 @@
 	/* we're getting called two times during file load,
 	resulting in a not valid G.relbase on the first time (cache makes problems)
 	--> just return back */
-	if((clmd->sim_parms->flags & CLOTH_SIMSETTINGS_FLAG_LOADED)&& (!G.relbase_valid))
+	if((clmd->sim_parms->flags & CLOTH_SIMSETTINGS_FLAG_LOADED) && (!G.relbase_valid)) 
 	{
 		clmd->sim_parms->flags &= ~CLOTH_SIMSETTINGS_FLAG_LOADED;
 		return dm;
@@ -732,8 +735,6 @@
 	
 	// only be active during a specific period:
 	// that's "first frame" and "last frame" on GUI
-	
-	// TODO: enable later again after refactoring
 	if ( current_time < clmd->sim_parms->firstframe )
 	{
 		return result;

Modified: trunk/blender/source/blender/blenkernel/intern/implicit.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/implicit.c	2008-01-29 23:17:11 UTC (rev 13464)
+++ trunk/blender/source/blender/blenkernel/intern/implicit.c	2008-01-30 02:05:37 UTC (rev 13465)
@@ -1416,7 +1416,7 @@
 			}
 		}	
 	}
-
+	
 	while(step < tf)
 	{ 		
 		effectors= pdInitEffectors(ob,NULL);
@@ -1531,8 +1531,11 @@
 		if(effectors) pdEndEffectors(effectors);
 		
 		/* ask for user break */ 
+		/*
+		don't work very well, gives problems with ctrl-a + esc
 		if (CT_localInterruptCallBack && CT_localInterruptCallBack())
 			return 0;
+		*/
 	}
 
 	for(i = 0; i < numverts; i++)

Modified: trunk/blender/source/blender/blenkernel/intern/modifier.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/modifier.c	2008-01-29 23:17:11 UTC (rev 13464)
+++ trunk/blender/source/blender/blenkernel/intern/modifier.c	2008-01-30 02:05:37 UTC (rev 13465)
@@ -5212,8 +5212,8 @@
 			collmd->time = current_time;
 		}
 		else
-		{
-			collmd->time = current_time;
+		{	
+			collisionModifier_freeData((ModifierData *)collmd);
 		}
 	}
 	

Modified: trunk/blender/source/blender/src/buttons_object.c
===================================================================
--- trunk/blender/source/blender/src/buttons_object.c	2008-01-29 23:17:11 UTC (rev 13464)
+++ trunk/blender/source/blender/src/buttons_object.c	2008-01-30 02:05:37 UTC (rev 13465)
@@ -2419,7 +2419,7 @@
 		if(clmd)
 		{
 			clmd->sim_parms->flags |= CLOTH_SIMSETTINGS_FLAG_RESET;
-			DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA);
+			DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA); 
 			allqueue(REDRAWBUTSOBJECT, 0);
 			allqueue(REDRAWVIEW3D, 0);
 		}
@@ -5123,9 +5123,6 @@
 		int defCount;
 		char *clvg1, *clvg2;
 		char clmvg [] = "Vertex Groups%t|";
-		
-		clmdSetInterruptCallBack(blender_test_break); // make softbody module ESC aware
-		G.afbreek=0; // init global break system
 
 		val2=0;
 		
@@ -5262,7 +5259,7 @@
 		else
 		uiDefBut(block, LABEL, 0, " ",  10,80,145,20, NULL, 0.0, 0, 0, 0, "");
 		*/
-
+#if WITH_BULLET == 1
 		uiDefButBitI(block, TOG, CLOTH_COLLSETTINGS_FLAG_ENABLED, B_CLOTH_RENEW, "Enable collisions",	10,60,150,20, &clmd->coll_parms->flags, 0, 0, 0, 0, "Enable collisions with this object");
 		if (clmd->coll_parms->flags & CLOTH_COLLSETTINGS_FLAG_ENABLED)
 		{
@@ -5272,6 +5269,9 @@
 		}
 		else
 			uiDefBut(block, LABEL, 0, "",160,60,150,20, NULL, 0.0, 0, 0, 0, "");	
+#else
+		uiDefBut(block, LABEL, 0, "No collisions available (compile with bullet).",10,60,300,20, NULL, 0.0, 0, 0, 0, "");
+#endif
 	}
 	
 	uiBlockEndAlign(block);





More information about the Bf-blender-cvs mailing list