Blender Git Commit Log

Git Commits -> Revision 3bea663

Revision 3bea663 by Nils Thuerey (master)
November 5, 2006, 16:30 (GMT)
- bugfixes
#4742 exported normals are now correct
#4821 & 4956 for complex movements in/outflows can now also
use the animated mesh option
- new features
* isosurface subdivision: directly
creates a finer surface mesh from the simulation data.
this increases simulation time and harddisk usage, though, so
be careful - usually values of 2-4 should be enough.
* fluidsim particles: extended model for particle
simulation and generation. When isosurface subdivision is enabled,
the particles are now included in the surface generation,
giving a better impression of a single connected surface.
Note - the particles are only included in the final surface
mesh, so the preview surface shows none of the particle
effects.
* particle loading: different types of particles can now be selected for
display: drops, floats and tracers. This is a bit obsolete
due to the extensions mentioned above, but might still be useful.
Floats are just particles floating on the fluid surface, could
be used for e.g. foam.
* moving objects impact factor: this is another tweaking option,
as the handling of moving objects is still not conserving
mass. setting this to zero simply deletes the fluid, 1 is
the default, while larger values cause a stronger
impact. For tweaking the simulation: if fluid disappears, try
increasing this value, and if too much is appearing reduce it.
You can even use negative values for some strange results :)
- more code cleanup, e.g. removed config file writing in fluidsim.c,
added additional safety checks for particles & fluidsim domains (these
currently dont work together). I also removed the "build particles"
debug message in effects.c (seemed to be unnecessary?).

Some more info on the new features:
Here are two test animations showing the difference between
using the particle generation with isosurface subdivision.
This is how it would look with the old solver version:
http://www10.informatik.uni-erlangen.de/~sinithue/blender/fluid6_fl6manc4_1noparts.mpg
and this with the new one:
http://www10.informatik.uni-erlangen.de/~sinithue/blender/fluid6_fl6manc4_2wparts.mpg
Both simulations use a resolution of 64, however, the version with particles
takes significantly longer (almost twice as long).
The .blend file for a similar setup can be found here:
http://www10.informatik.uni-erlangen.de/~sinithue/blender/fluid6_testmanc4.blend
(Minor Tips for this file: dont enable subdivions of characters until rendering,
thus leave off for simulation, as it uses the rendering settings! For making
nice pictures switch on subdivion, and OSA.)

And here's a picture of old vs. new (for webpage or so):
http://www10.informatik.uni-erlangen.de/~sinithue/blender/fluid6_manc4compare.png

Commit Details:

Full Hash: 3bea663ffa27cab0a60b3ed1ac41d431ce55cecc
SVN Revision: 8751
Parent Commit: 64b9cda
Lines Changed: +2604, -2348

48 Modified Paths:

/intern/elbeem/COPYING (+2, -4) (Diff)
/intern/elbeem/extern/elbeem.h (+10, -4) (Diff)
/intern/elbeem/intern/attributes.cpp (+41, -521) (Diff)
/intern/elbeem/intern/attributes.h (+45, -131) (Diff)
/intern/elbeem/intern/elbeem.cpp (+7, -3) (Diff)
/intern/elbeem/intern/elbeem.h (+10, -4) (Diff)
/intern/elbeem/intern/isosurface.cpp (+534, -194) (Diff)
/intern/elbeem/intern/isosurface.h (+26, -1) (Diff)
/intern/elbeem/intern/loop_tools.h (+4, -0) (Diff)
/intern/elbeem/intern/ntl_blenderdumper.cpp (+46, -23) (Diff)
/intern/elbeem/intern/ntl_blenderdumper.h (+1, -1) (Diff)
/intern/elbeem/intern/ntl_bsptree.cpp (+1, -1) (Diff)
/intern/elbeem/intern/ntl_bsptree.h (+1, -1) (Diff)
/intern/elbeem/intern/ntl_geometryclass.h (+8, -1) (Diff)
/intern/elbeem/intern/ntl_geometrymodel.cpp (+1, -1) (Diff)
/intern/elbeem/intern/ntl_geometrymodel.h (+1, -1) (Diff)
/intern/elbeem/intern/ntl_geometryobject.cpp (+31, -20) (Diff)
/intern/elbeem/intern/ntl_geometryobject.h (+8, -2) (Diff)
/intern/elbeem/intern/ntl_geometryshader.h (+1, -1) (Diff)
/intern/elbeem/intern/ntl_lighting.cpp (+1, -1) (Diff)
/intern/elbeem/intern/ntl_lighting.h (+1, -1) (Diff)
/intern/elbeem/intern/ntl_matrices.h (+80, -1) (Diff)
/intern/elbeem/intern/ntl_ray.cpp (+1, -1) (Diff)
/intern/elbeem/intern/ntl_ray.h (+1, -1) (Diff)
/intern/elbeem/intern/ntl_vector3dim.h (+1, -1) (Diff)
/intern/elbeem/intern/ntl_world.cpp (+18, -8) (Diff)
/intern/elbeem/intern/ntl_world.h (+1, -1) (Diff)
/intern/elbeem/intern/parametrizer.cpp (+9, -7) (Diff)
/intern/elbeem/intern/parametrizer.h (+3, -3) (Diff)
/intern/elbeem/intern/particletracer.cpp (+17, -5) (Diff)
/intern/elbeem/intern/particletracer.h (+18, -3) (Diff)
/intern/elbeem/intern/simulation_object.cpp (+61, -52) (Diff)
/intern/elbeem/intern/simulation_object.h (+1, -1) (Diff)
/intern/elbeem/intern/solver_adap.cpp (+81, -65) (Diff)
/intern/elbeem/intern/solver_class.h (+68, -10) (Diff)
/intern/elbeem/intern/solver_init.cpp (+308, -253) (Diff)
/intern/elbeem/intern/solver_interface.cpp (+76, -35) (Diff)
/intern/elbeem/intern/solver_interface.h (+43, -18) (Diff)
/intern/elbeem/intern/solver_main.cpp (+366, -292) (Diff)
/intern/elbeem/intern/solver_relax.h (+12, -1) (Diff)
/intern/elbeem/intern/solver_util.cpp (+437, -337) (Diff)
/intern/elbeem/intern/utilities.cpp (+134, -20) (Diff)
/intern/elbeem/intern/utilities.h (+3, -3) (Diff)
/source/blender/blenkernel/intern/DerivedMesh.c (+3, -1) (Diff)
/source/blender/blenkernel/intern/effect.c (+8, -6) (Diff)
/source/blender/makesdna/DNA_object_fluidsim.h (+3, -0) (Diff)
/source/blender/src/buttons_object.c (+61, -21) (Diff)
/source/blender/src/fluidsim.c (+10, -286) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021