Wave is a PIC/FLIP Fluid Simulator that can simulate both smoke and fluids. It is mainly based on the algorithms presented by Robert Bridson in both his book and his paper "Animating Sand as a Fluid".
// Build program
mkdir build
cd build
cmake ..
make
// Run program
cd ..
cd src
.SIM fluid or ./SIM smoke <scene 0 or 1>
To change to 3D Fluid
- In
main.cpp
comment out#define TWO_DIM
- Siggraph 2007 Course Notes
- Aline Normoyle's Tutorial
- Stable Fluids by Stam
- Visual Simulation of Smoke by Fedkiw, Stam, & Jensen
- Fluid Simulation for Computer Graphics by Braley and Sandu
- PIC/FLIP Using a Block-Optimized Grid Data Structure
- 3D Particle in Cell/Fluid Implicit Solver Thesis by Ioannidis
- Fluid Flow for the Rest of Us by Cline, Cardon, and Egbert