[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [34385] trunk/blender/source/blender/ blenkernel/intern/particle_system.c: Bug fix: particle dynamics were being calculated if point cache was only half baked (reported by Michael Fox in #blendercoders)

Janne Karhu jhkarh at gmail.com
Tue Jan 18 10:25:38 CET 2011


Revision: 34385
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=34385
Author:   jhk
Date:     2011-01-18 09:25:37 +0000 (Tue, 18 Jan 2011)
Log Message:
-----------
Bug fix: particle dynamics were being calculated if point cache was only half baked (reported by Michael Fox in #blendercoders)
* When a simulation is baked no dynamics calculations should happen anymore (even outside of baked frame range) since these can be very time consuming and baked simulations are supposed to be fast!

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

Modified: trunk/blender/source/blender/blenkernel/intern/particle_system.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/particle_system.c	2011-01-18 06:35:26 UTC (rev 34384)
+++ trunk/blender/source/blender/blenkernel/intern/particle_system.c	2011-01-18 09:25:37 UTC (rev 34385)
@@ -3854,14 +3854,15 @@
 
 			return;
 		}
+		/* Cache is supposed to be baked, but no data was found so bail out */
+		else if(cache->flag & PTCACHE_BAKED) {
+			psys_reset(psys, PSYS_RESET_CACHE_MISS);
+			return;
+		}
 		else if(cache_result == PTCACHE_READ_OLD) {
 			psys->cfra = (float)cache->simframe;
 			cached_step(sim, psys->cfra);
 		}
-		else if(cfra != startframe && ( /*sim->ob->id.lib ||*/ (cache->flag & PTCACHE_BAKED))) { /* 2.4x disabled lib, but this can be used in some cases, testing further - campbell */
-			psys_reset(psys, PSYS_RESET_CACHE_MISS);
-			return;
-		}
 
 		/* if on second frame, write cache for first frame */
 		if(psys->cfra == startframe && (cache->flag & PTCACHE_OUTDATED || cache->last_exact==0))




More information about the Bf-blender-cvs mailing list