position-based-dynamics
position-based-dynamics copied to clipboard
eXtended Position based dynamics implementation with soft body virtual cutting
Soft Body Simulation using eXtended Position Based Dynamics
Overview
Academic prototyping project for soft body simulation using XPBD. Different constraint types will be implemented using Eigen for matrix computations and libigl for visualization and user interaction.
Short term roadmap
Constraint types
- edge length
- tetrahedral volume
- fem based
Dependencies
- C++17 compiler
- libigl
libigl is included in the project using CMake's FetchContent and pulls in Eigen, glfw, Dear ImGui and TetGen with it.
Building
# Download repository
$ git clone https://github.com/Q-Minh/position-based-dynamics
$ cd position-based-dynamics
# Configure and build project
$ cmake -S . -B build
$ cmake --build build --target pbd --config Release
# Run the program
$ ./build/Release/pbd.exe