GitHunt
KI

Kiuh/physics-engine

2D physics simulation with Vulkan

Simple 2D Physics Engine

This application represents simple 2D physics engine that simulate world with solid dynamic and static objects that can move and rotate.

Build

Requirements

  • VcPkg
  • VisualStudio 2022

To build, open visual studio solution and build by UI.

Graphics

Engine uses Vulkan as graphics api. As window manager used glfw. Most of the graphics code written by following this tutorial.

Libraries used:

Physics

Engine implements simple 2D collision detection and resolusion. Used GJK and EPA algorithms to detect collisions.

Most of the physics part developed by this youtube series about 2D physics Engine.

GJK and EPA algorithm mostly driven from this article about Collision detection algorithm in 2D/3D and this series of articles about developing Game Physics engine.

Libraries used:

Other useful utility libs used

Video example

Physics.Sim.Gameplay.mp4

Languages

C++99.7%C0.3%GLSL0.1%

Contributors

MIT License
Created September 26, 2024
Updated December 15, 2024
Kiuh/physics-engine | GitHunt