A physics based collision system built using the DirectX framework.
For this this project I looked at how collision systems worked within games and game engines. I then created my own version of a physics, collision and response system in DirectX11 using C++. In the project I have implements a first person character controller which the user controls to jump from one platform to another. The smaller platforms have a bouncier material on them which acts like a trampoline.
The collision system itself supports various physics objects including:
- Axis Aligned Bounding Boxes
- Oriented Bounding Boxes
- Spheres
- Raycasts
Using these objects, I implemented different methods for detecting collision between them. To speed up the collision detection within the project, I created a quadtree. The quadtree allows the system to only check for collision between nearby objects, substantially decreasing the time it takes to check for collisions.