Skip to content

DallinClark/3d-physics-engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Realtime 3D Physics Engine

Image 1 Image 2 Image 3 Image 4

Overview

This project is a simulation tool real-time rigid body dynamics. Developed in C++ and rendered with OpenGL.

Experience the engine in motion:

Full Video Demo

Features

  • 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

Acknolowdgements

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

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors