Awesome
A toy fluid engine
A repo that tries to reimplement some fluid-related algorithm,
The project is based on Taichi, a programming language that embeds both GPU and CPU parralleled computing.
Dependency Installation
pip install taichi taichi_glsl
Fast Run
python exp_play_Euler.py --cfg mouse2d # use mouse to drag the fluid
python exp_play_Euler.py --cfg jet2d # shot the jet from below
python exp_play_Euler.py --cfg jet3d # 3D jet
python exp_play_Euler.py --cfg BMcq_jet2d # takes time
Feature:
Currently, we support
In both 2D/3D. The 3D version is rendered with Taichi Three(Tina)
Reference
For implementation
- NVIDIA GPU GEMs,
- taichi official example
- Cornell_class_slides
- offcial tutorial
- Previous Eulerian Fluid Engine With taichi
Paper
- Efficient and Conservative Fluids with Bidirectional Mapping
- A parallel multigrid poisson solver for fluids simulation on large grids
- Visual simulation of Smoke
- IVOCK
- MacCormack
- Stable fluid
- Advection-reflection
CIS 565 submission
This project is presented in UPenn CIS 565 GPU programming course as a final project.
You can also view other cool final project by other students at here!