GUInity Game Engine

GUInity is a 3D component-based game engine. It’s a personal project to better understand how game engines work under the hood, practice C++ in a large project and work 3rd-party libraries integration.

Challenges:
  • Being involved in all parts of a game engine, from loading assets out of the file system to rendering and libraries integration
  • Balance between bringing more features and optimization
Takeaways:
  • Integration with several 3rd-party libraries (OpenGL/FMOD/PhysX/FBX SDK/FreeType)
  • Cross-platform (Windows/Mac)
  • Apart from the libraries, built the engine in C++ from scratch
  • C++11 concepts
  • OpenGL concepts
  • 3D Math