I designed and created a custom Entity-Component-System (ECS) game engine for 2D game development using C++, raylib, and ImGUI. The engine uses modern C++20 as a foundation, raylib for graphics, sound, camera, and asset loading, and ImGUI for UI and debug UI.
As part of creating the engine, I also developed curricula for Wentworth Institute of Technology for students to learn game engine development. The course consists of 24 lectures, four homework assignments, and a final project.
The engine contains the following features: