PbfVs
PbfVs copied to clipboard
Implementation of Macklin, Miles, and Matthias Müller. "Position based fluids.". Visual Studio 2015 + CUDA 8.0
PBF
Goal
- Implement both the CPU and GPU version of the Position Based Fluid
Current Progress
- [x] CPU impl
- [x] GPU impl
- [ ] Customizable particle system
- [ ] Fluid Rendering (not particle rendering)
- [ ] Code refactoring
- [ ] Optional build on GPU impl
Some Images
Wave simulation using ~18,000 particles on NVIDIA GeForce GTX 960M.

OpenGL coordinate system reference

Dependency
- OpenGL
- glfw3
- GLEW
- glm (header-only library)
- CUDA 8.0 (this should be optional)
Project Setup
- All the third party dependency headers should be inside
C:\ThirdParty\Include. - All the third party dependency libraries should be inside
C:\ThirdParty\Libs.
References
- Macklin, Miles, and Matthias Müller. "Position based fluids."
- van der Laan, Wladimir J., Simon Green, and Miguel Sainz. "Screen space fluid rendering with curvature flow."
- "Screen Space Fluid Rendering for Games", NVIDIA, GDC 2010
- "Particle Simulation using CUDA", Simon Green
- Good OpenGL Tutorial for Beginners
- Eisemann, Elmar, and Xavier Décoret. "Single-pass GPU solid voxelization for real-time applications."
- Point in Triangle Test