- Fluid Simulation Using Implicit Particles
- Fluid Flow for the Rest of Us: Tutorial of the Marker and Cell Method in Computer Graphics
- Main.cpp
- MacGrid.cpp
- Reconstruction.cpp
- Initial fluid/solid positions are defined based on input trimeshes
- Within the simulation loop:
- A buffer zone is created surrounding the fluid
- Velocity field updated based on particle velocities
- Velocity field updated based on external forces (gravity)
- Velocity field into and out of solids is set to 0
- Divergence is removed from the velocity field
- Particle positions are updated based on velocity field
- Particle positions are output at regular intervals
- Within the reconstruction pipeline:
- Particle positions are converted to signed distance fields
- Marching cubes is used to produce a trimesh
- The trimeshes are renedered in Blender
- Adding additional fluid to simulation by adding fluid source or turning solids into fluids
- Adding foam particles to simulation when cell curl above given value