Skip to content

GerardMT/Rigid-Bodies

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rigid Bodies

A very simple CPU driven rigid bodies system with an OpenGL renderer. Qt 5 used as the base framework.

The rigid body system implementation is based on the Physically Based Modeling SIGGRAPH 2001 Course notes.

Features

  • Control the camera (WASD keys for movement, and mouse left click + mouse movement for orientation).
  • Semi-implicit Euler as the numerical solver.
  • Collider types implemented:
    • Sphere
    • Cube
  • Force fields implemented:
    • Gravity
    • Drag

Known issues

  • The resting contact has is not implemented. Instead of applying the resting contact, objects position and rotation get fixed.

Requirements

The software requires the following libraries to be installed:

  • GLEW
  • Eigen
  • QT 5

Build

Clone the repository:

git clone https://github.com/GerardMT/Rigid-Bodies
cd Rigid-Bodies

Compile the code:

cd src
qmake-qt5
make

The builds can be found at build/.

Run

Once build, run the project from the build directory:

cd ../build/release/
./rigid-bodies

Screenshots

Spheres Cube Spheres

Other

Have a look at my other physics based projects:

Releases

No releases published

Packages

No packages published