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.
- edge length
- tetrahedral volume
- fem based
- 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.
# 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