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

Daniel Genrich daniel.genrich at gmx.net
Tue Sep 15 18:06:02 CEST 2009


Revision: 23254
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=23254
Author:   genscher
Date:     2009-09-15 18:05:59 +0200 (Tue, 15 Sep 2009)

Log Message:
-----------
Smoke:
* This should make low res bake too if high res gets baked

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

Modified: trunk/blender/source/blender/blenkernel/intern/pointcache.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/pointcache.c	2009-09-15 15:34:00 UTC (rev 23253)
+++ trunk/blender/source/blender/blenkernel/intern/pointcache.c	2009-09-15 16:05:59 UTC (rev 23254)
@@ -2119,6 +2119,25 @@
 		if((cache->flag & PTCACHE_BAKED)==0) {
 			if(pid->type==PTCACHE_TYPE_PARTICLES)
 				psys_get_pointcache_start_end(scene, pid->calldata, &cache->startframe, &cache->endframe);
+			else if(pid->type == PTCACHE_TYPE_SMOKE_HIGHRES) {
+				/* get all pids from the object and search for smoke low res */
+				ListBase pidlist2;
+				PTCacheID *pid2;
+				BKE_ptcache_ids_from_object(&pidlist2, pid->ob);
+				for(pid2=pidlist2.first; pid2; pid2=pid2->next) {
+					if(pid2->type == PTCACHE_TYPE_SMOKE_DOMAIN) 
+					{
+						if(pid2->cache && !(pid2->cache->flag & PTCACHE_BAKED)) {
+							if(bake || pid2->cache->flag & PTCACHE_REDO_NEEDED)
+								BKE_ptcache_id_clear(pid2, PTCACHE_CLEAR_ALL, 0);
+							if(bake) {
+								pid2->cache->flag |= PTCACHE_BAKING;
+								pid2->cache->flag &= ~PTCACHE_BAKED;
+							}
+						}
+					}
+				}
+			}
 
 			if(bake || cache->flag & PTCACHE_REDO_NEEDED)
 				BKE_ptcache_id_clear(pid, PTCACHE_CLEAR_ALL, 0);

Modified: trunk/blender/source/blender/blenkernel/intern/smoke.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/smoke.c	2009-09-15 15:34:00 UTC (rev 23253)
+++ trunk/blender/source/blender/blenkernel/intern/smoke.c	2009-09-15 16:05:59 UTC (rev 23254)
@@ -1182,6 +1182,7 @@
 		cache->simframe= framenr;
 
 		// simulate the actual smoke (c++ code in intern/smoke)
+		// DG: interesting commenting this line + deactivating loading of noise files
 		if(framenr!=startframe)
 			smoke_step(sds->fluid, smd->time);
 





More information about the Bf-blender-cvs mailing list