[Bf-blender-cvs] [559ae85] soc-2014-fluid: vorticity, SDF grids added
Roman Pogribnyi
noreply at git.blender.org
Wed Jul 2 11:51:43 CEST 2014
Commit: 559ae8567c1c236041875f9eef73b2d27afa7dd6
Author: Roman Pogribnyi
Date: Sat Jun 21 10:25:13 2014 +0200
https://developer.blender.org/rB559ae8567c1c236041875f9eef73b2d27afa7dd6
vorticity, SDF grids added
===================================================================
M intern/smoke/intern/MANTA.h
===================================================================
diff --git a/intern/smoke/intern/MANTA.h b/intern/smoke/intern/MANTA.h
index 4670166..fad7074 100644
--- a/intern/smoke/intern/MANTA.h
+++ b/intern/smoke/intern/MANTA.h
@@ -6,6 +6,7 @@
#include "../../../source/blender/makesdna/DNA_modifier_types.h"
#include "../../../source/blender/makesdna/DNA_smoke_types.h"
#include <sstream>
+#include <stdlib.h>
#include <fstream>
extern "C" bool manta_check_grid_size(struct FLUID_3D *fluid, int dimX, int dimY, int dimZ)
@@ -260,6 +261,8 @@ static void generate_manta_sim_file(Scene *scene, SmokeModifierData *smd)
ss << "obs.load('manta_coll.obj')\n";
ss << "transform_back(obs, res)\n";
ss << "obs.applyToGrid(grid=flags, value=FlagObstacle, cutoff=-1)\n";
+ ss << "sdf_obs = s.create(LevelsetGrid)\n";
+ ss << "obs.meshSDF(obs, sdf_obs, 1.1)\n";
}
/*Create the array of UV grids*/
if(wavelets){
@@ -276,9 +279,7 @@ static void generate_manta_sim_file(Scene *scene, SmokeModifierData *smd)
ss << "pressure = s.create(RealGrid) \n";/*must always be present*/
ss << "energy = s.create(RealGrid) \n";
ss << "tempFlag = s.create(FlagGrid)\n";
- ss << "sdf_obs = s.create(LevelsetGrid)\n";
ss << "sdf_flow = s.create(LevelsetGrid)\n";
- ss << "obs.meshSDF(obs, sdf_obs, 1.1)\n";
ss << "source.meshSDF(source, sdf_flow, 1.1)\n";
/*Wavelets noise field*/
@@ -316,7 +317,7 @@ static void generate_manta_sim_file(Scene *scene, SmokeModifierData *smd)
ss << " setWallBcs(flags=flags, vel=vel) \n";
ss << " addBuoyancy(density=density, vel=vel, gravity=vec3(0,-6e-4,0), flags=flags) \n";
- ss << " vorticityConfinement( vel=vel, flags=flags, strength=0.4 ) \n";
+ ss << " vorticityConfinement( vel=vel, flags=flags, strength=" << smd->domain->vorticity / 10. << " ) \n";
manta_solve_pressure(ss,"flags", "vel", "pressure",true,smd->domain->border_collisions, smd->domain->manta_solver_res,1.0,0.01);
ss << " setWallBcs(flags=flags, vel=vel) \n";
@@ -356,7 +357,7 @@ static void generate_manta_sim_file(Scene *scene, SmokeModifierData *smd)
}
manta_setup_file << ss.rdbuf();
- manta_setup_file.close();
+ manta_setup_file.close();
}
#endif /* MANTA_H */
More information about the Bf-blender-cvs
mailing list