Creating a guide for new developers to learn how to build their own game engines from scratch, understanding how memory works and the flow it follows.
2023, May
1 Year
C++20, RayLib & LaTeX
Currently, video games provide us with many hours of entertainment throughout our lives. That's why there is an increasing focus on advancing and improving technology to achieve the best titles.
This project focuses on a small part within the technology and architecture of game creation, specifically on the software architecture called "Entity Component System" (ECS).
The challenge for this project was to dismantle a proprietary game engine that had already been built and figure out how to explain each part of it step by step from scratch. Additionally, I had to brainstorm and develop each of the examples used in it.
I have carried out 5 projects, dividing the guide into chapters, from least to most difficulty. From stars moving across the screen (Starfield) to a turn-based roguelike board game (The Final Room)
As a result, we have built 5 mini-games, iterating our engine in each of them, until achieving a basic and useful engine. The idea was to go step by step from scratch, so I couldn't finish this guide with a complete and perfect engine, but the plan is to continue with this project and release a second volume.