[Bf-blender-cvs] [b79bcc8] soc-2014-fluid: replacing step function

Roman Pogribnyi noreply at git.blender.org
Wed Oct 15 19:53:37 CEST 2014


Commit: b79bcc81212fd424a69f93eb84affabadb5b77e7
Author: Roman Pogribnyi
Date:   Sat Sep 27 09:38:38 2014 +0200
Branches: soc-2014-fluid
https://developer.blender.org/rBb79bcc81212fd424a69f93eb84affabadb5b77e7

replacing step function

===================================================================

M	source/blender/blenkernel/intern/smoke.c

===================================================================

diff --git a/source/blender/blenkernel/intern/smoke.c b/source/blender/blenkernel/intern/smoke.c
index f3a3c7b..f57e1a0 100644
--- a/source/blender/blenkernel/intern/smoke.c
+++ b/source/blender/blenkernel/intern/smoke.c
@@ -2596,7 +2596,12 @@ static void step(Scene *scene, Object *ob, SmokeModifierData *smd, DerivedMesh *
 
 		if (sds->total_cells > 1) {
 			update_effectors(scene, ob, sds, dtSubdiv); // DG TODO? problem --> uses forces instead of velocity, need to check how they need to be changed with variable dt
-			smoke_step(sds->fluid, gravity, dtSubdiv);
+			if (sds->flags && MOD_SMOKE_USE_MANTA){
+				smoke_mantaflow_sim_step(scene,smd);
+			}
+			else{
+				smoke_step(sds->fluid, gravity, dtSubdiv);
+			}
 		}
 	}
 }
@@ -2800,35 +2805,17 @@ static void smokeModifier_process(SmokeModifierData *smd, Scene *scene, Object *
 
 		// simulate the actual smoke (c++ code in intern/smoke)
 		// DG: interesting commenting this line + deactivating loading of noise files
-		if(framenr != startframe && smd->domain->flags & MOD_SMOKE_USE_MANTA)	/*load manta sim data into fluid object*/
-			{
-				/*PR: Uncomment when adding simulation from timeline*/
-				smoke_mantaflow_sim_step(scene,smd);
-				const char *density_name_format = "./den%04d.uni";
-				const char *wavelets_name_format = "./densityXl_%04d.uni";
-				char buff[100];
-				sprintf(buff, density_name_format, scene->r.cfra);
-				bool read_density = 1;//smoke_mantaflow_read(smd->domain, buff, 0);
-				bool read_wavelets = 1;
-				if (smd->domain->flags & MOD_SMOKE_HIGHRES)
-				{
-					/*highdres*/
-					sprintf(buff, wavelets_name_format, scene->r.cfra);
-					read_wavelets = smoke_mantaflow_read(smd->domain, buff, 1);	
-				}
-			}else{
-				if (framenr != startframe){
-					if (sds->flags & MOD_SMOKE_DISSOLVE) {
-						/* low res dissolve */
-						smoke_dissolve(sds->fluid, sds->diss_speed, sds->flags & MOD_SMOKE_DISSOLVE_LOG);
-						/* high res dissolve */
-						if (sds->wt) {
-							smoke_dissolve_wavelet(sds->wt, sds->diss_speed, sds->flags & MOD_SMOKE_DISSOLVE_LOG);
-						}
-					}
-					step(scene, ob, smd, dm, scene->r.frs_sec / scene->r.frs_sec_base, for_render);
+		if (framenr != startframe){
+			if (sds->flags & MOD_SMOKE_DISSOLVE) {
+				/* low res dissolve */
+				smoke_dissolve(sds->fluid, sds->diss_speed, sds->flags & MOD_SMOKE_DISSOLVE_LOG);
+				/* high res dissolve */
+				if (sds->wt) {
+					smoke_dissolve_wavelet(sds->wt, sds->diss_speed, sds->flags & MOD_SMOKE_DISSOLVE_LOG);
 				}
 			}
+			step(scene, ob, smd, dm, scene->r.frs_sec / scene->r.frs_sec_base, for_render);
+		}
 		// create shadows before writing cache so they get stored
 		smoke_calc_transparency(sds, scene);




More information about the Bf-blender-cvs mailing list