Aether

Aether is a C++ project for building a simple real-time 3D rigid body physics simulation with OpenGL visualization.

Description

Aether


Aether is a C++ project for building a simple real time 3D rigid body physics simulation with OpenGL visualization.

This project is being developed for FOSS 2026.
The goal is to implement core physics concepts from scratch and keep the architecture clean and modular.


Current Scope

  • Rigid body simulation

  • Gravity

  • Collision detection and response

  • Friction

  • Spring constraints

  • Rope (distance constraints)

  • Real-time 3D rendering

Issues & PRs Board
Pull Request
feat: implemented Vec3 class and basic CLI timestop loop
Pull Request
fix: moved rigidbody and collision implementations from header files
Pull Request
feat: centralized the integration part in PhysicsWorld handling updat…
Pull Request
Feat/openglsetup
Pull Request
feat: implemented general collider and spherical collider
Pull Request
feat: handeled collision between sphere and sphere
Pull Request
Feature/boxcollider
Pull Request
feat: implemented detection and resolution of sphere and box collision
Pull Request
feat: implemented map to handle func calls for collision resolution
Pull Request
feat: added window with body rendering as dots in real time
Pull Request
chore: added a simple stress test to debug
Pull Request
feat: friction done
Pull Request
fix: improve physics stability with fixed timestep and rigidbody vali…
Pull Request
Feat: added 3d movement WASD
Pull Request
feat: added pause button using imgui
Pull Request
added fps and frametime
Pull Request
Chore/centralizing constants
Pull Request
feat: added unique restitution coeff and friction coeff to each rigid…
Pull Request
feat: rendering shapes for bodies and axes
Pull Request
checkpoint: saving a stable checkpoint because breaking changes are to be implemented in near futurre
Pull Request
contactfeat
Pull Request
Feat/contact mechanism
Pull Request
feature: added mouse rotation
Pull Request
feat: implemented friction and tweaked config constant
Pull Request
feat:bodyid
Pull Request
feat:added ramp shape and its properties
Pull Request
feat: added ramp to sphere collision
Pull Request
Featforce
Pull Request
feat: rendering ramp
Pull Request
chore: added mit-license and updated the readme.md
Pull Request
feat: added testcases for different scenerios
Pull Request
Feat/warmstart
Pull Request
Feat/ ramp ramp contact
Pull Request
feat: implemented the base strcuture for contact manifolds
Pull Request
feat: implemented the base strcuture for contact manifolds
Pull Request
feat: implemented the base strcuture for contact manifolds
Pull Request
Featmanifold
Pull Request
Feat/body menu UI
Pull Request
Manifoldcheck
Pull Request
Manifoldcheck
Pull Request
Feature/ramp manifold
Pull Request
feat:added manifolds for ramps
Pull Request
box-box multimanifold
Pull Request
feat: improvements and restructure
Pull Request
fix: fixed naming convention id assignment order
Pull Request
checkpoint: second save to main
Pull Request
Revert "checkpoint: second save to main"
Pull Request
Revert "fix: fixed naming convention id assignment order"
Pull Request
Revert "feat: improvements and restructure"
Pull Request
Rampramp manifold
Pull Request
Feat/improvements
Pull Request
Fix/residual vel
Pull Request
Featrotationstart
Pull Request
Featrotationstart
Pull Request
feat: implemented distance based constraints ie ropes,rod,spring
Pull Request
feat: added shaders
Pull Request
fix: fixed the issue where the body id was corrupted and causing cons…
Pull Request
Feat/manifold fix
Pull Request
feat/rotationstep
Pull Request
Feat/rotationstep
Pull Request
Feat/manifold fix
Pull Request
feat: rendering extended for rope, rod and spring
Pull Request
feat: rendering the rotation