Skip to content

vadimvinokurov/vengine3D

Repository files navigation

Vengine3D Logo

vengine3D

Vengine3D is my first 3D physics engine to improve my programming skills and explore the field of game development.

Build using CMake

  • Install CMake
  • Ensure CMake is in the user PATH
git clone https://github.com/vadimvinokurov/vengine3D.git
cd vengine3D
git submodule init
git submodule update
mkdir build
cd build
cmake ..
cmake --build . --config Release
cp -R ..\contents .
  • The "contents" folder must be located one level down in the filesystem than the executable file.

Features

Physics engine implemented as:

  • OpenGL with GLFW
  • Implemented OOP Abstraction layer for OpenGL
  • GUI base on ImGUI
  • Collision system based on GJK algorithm and use convex shape and sphere, multiple shapes per body.
  • Collision system give contact point and depth vector
  • Physics engine use constraints physics (collision constraints solver with сontact, friction, and restitution, joint constraints)
  • Physics engine stable stacking with a linear-time solver (base on warmstarting and accumulating)
  • Load mesh and animation clips from glft file
  • Play animation

Demo video

https://youtu.be/vOq01VPtOe8

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published