diff options
Diffstat (limited to 'intern/smoke')
-rw-r--r-- | intern/smoke/intern/FLUID_3D_STATIC.cpp | 10 |
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.; } } |