Quentin Guidée

Game Engine

Dec. 2022

C++GitGitHubGitHub Actions
Creation of a game engine prototype in C++ using OpenGL, then Vulkan.

About

This prototype of a game engine was made in C++ and OpenGL, then migrated to Vulkan.

  • GameObject
  • Input Manager
  • Camera
  • Time Manager
  • Basic UI with FreeType text
  • Shaders
  • Use of Vulkan
  • Mesh import with tiny_obj_loader
  • Texture

The first screenshot shows the first working version of the engine. The second has more advanced features, such as textures, shaders and text displayed manually with freetype.

Game engine screenshot
Game engine screenshot

Of course, such a project will never be finished, as a Game Engine is a very complex project. However, this prototype was really interesting to make.

As this project is closed source, here is a summary of the code:

------------------------------------------------------------------------------- Language files blank comment code ------------------------------------------------------------------------------- C++ 57 738 18 2850 C/C++ Header 61 475 13 1352 XML 8 0 0 505 CMake 22 38 0 264 Text 1 18 0 75 GLSL 2 9 0 26 YAML 1 5 0 16 diff 1 2 6 12 Markdown 2 6 0 9 ------------------------------------------------------------------------------- SUM: 155 1291 37 5109 -------------------------------------------------------------------------------