Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Genrich <daniel.genrich@gmx.net>2012-05-27 22:45:16 +0400
committerDaniel Genrich <daniel.genrich@gmx.net>2012-05-27 22:45:16 +0400
commit1e13168183361e65e01c7613f094407780d0967e (patch)
tree3280df668a40b1d1be227bb9338133e3fced26e2 /intern/smoke
parentd4b6927179e3a6ac5d4d3efa4b0bb8b785dd1822 (diff)
Smoke:
a) Another boundary fix. Resulted in smoke getting "sucked" back into the domain b) Disabling substeps (internal thing). Fixes arbitrary explosions/instabilities. Part of my Blender Smoke Development.
Diffstat (limited to 'intern/smoke')
-rw-r--r--intern/smoke/intern/FLUID_3D_STATIC.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/intern/smoke/intern/FLUID_3D_STATIC.cpp b/intern/smoke/intern/FLUID_3D_STATIC.cpp
index 74c2c9c7e2d..c7a0ddcd04c 100644
--- a/intern/smoke/intern/FLUID_3D_STATIC.cpp
+++ b/intern/smoke/intern/FLUID_3D_STATIC.cpp
@@ -153,9 +153,13 @@ void FLUID_3D::setNeumannZ(float* field, Vec3Int res, int zBegin, int zEnd)
index = x + y * res[0];
field[index] = field[index + 2 * slabSize];
/* only allow outwards flux */
- if(field[index]>0.) field[index] = 0.;
- index += slabSize;
- if(field[index]>0.) field[index] = 0.;
+
+ // DG: Disable this for z-axis.
+ // The problem is that smoke somehow gets sucked in again
+ // from the TOP slab when this is enabled
+ // if(field[index]>0.) field[index] = 0.;
+ // index += slabSize;
+ // if(field[index]>0.) field[index] = 0.;
}
}