Game Engine
Dec. 2022
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](/images/projects/game_engine/image-10.png)
![Game engine screenshot](/images/projects/game_engine/image-16.png)
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
-------------------------------------------------------------------------------