This project is a simulation tool real-time rigid body dynamics. Developed in C++ and rendered with OpenGL.
Experience the engine in motion:
-
Rigid Body Dynamics:
Simulates 3D objects with variable properties
Adjustable density, dimensions, resitution(bounciness), initial velocity, and initial transforms per object -
Dynamic Gravity:
Customizable gravity strength and direction. -
Static Objects:
Supports unmovable objects with infinite mass -
Impulse-Based Collision Resolution:
Realistic collision responses computed via impulse methods with explicit Euler integration -
Convex Shape Support:
The engine supports collision detection for any convex shape including spheres, polygons, and custom geometries -
Broad and Narrow Phase Collision Detection:
Axis allgned boudning boxes are used for the narrow phase, and the Seperating Axis Therom is implemented for the narrow phase.
Sutherman-Hodgeman clipping is used to detect colisions points
Thanks to "Two-Bit Coding" and "blackedout01" on Youtube for physics tutorials.
Thanks to Chris Heckler for his artiles on RBD simulation. https://www.chrishecker.com/Rigid_Body_Dynamics



