A simple 2d pressureless (e.g. smoke) real-time fluid. Using sfml for visualisation and can be interacted with via the mouse. Supports periodic, wall and free boundary conditions.
Key | Action |
---|---|
Left click + drag | Inject velocity |
Right click + drag | Inject mass |
v | Draw velocity lines |
g | Draw grid lines |
space | pause fluid |
simple-fluid is compiled using cmake. An out-of-source build can be accomplished with the following commands:
mkdir build
cd build
cmake ..
make
Then run the created simple-fluid
binary.
- C++11
- cmake
- sfml
- Implement easy way to add persistent sources
- Replace
const
withconstexpr
where appropriate and benchmark difference