top of page

STAGE 

STAGE_DEMO.jpg

Project Outline

STAGE (Simple Two-dimensional Animations Game Engine) is a game engine built with C++ and SDL2, developed to learn the fundamentals of 2D engine architecture from scratch. The project follows a hand-developed Entity-Component-System (ECS) structure, which allowed me to understand how entities, components, and systems are organized and how this impacts performance.

The engine implements a simple yet effective game loop that manages timing (delta time and fixed step). It includes animation systems, collision detection, event handling, and components such as keyboard controls, camera, projectiles, and health.

Dear ImGui is integrated, allowing real-time enemy spawns. Lua is incorporated as the scripting language through the Sol2 library to load levels and behaviors from scripts.

About this project

This project began as a personal challenge to strengthen my programming fundamentals and deepen my understanding of game engine development. With guidance from Pikuma, I achieved my long-term goal of building a basic game engine from scratch. Along the way, I consolidated my knowledge of modern C++, expanded my use of the Standard Library, and applied concepts such as templates, which gave me a broader and more practical view of the language.

The most valuable outcome was designing and implementing an Entity–Component–System (ECS) architecture, which significantly improved my understanding of scalable engine design.

Finally, the project gave me hands-on experience with SDL and ImGui—tools I consider essential for continuing to grow as a programmer.

My role

  • Programmer 

Documentation

Repository

Tools

STAGE_DEMO_debug.jpg

Daniel Bellido

  • LinkedIn

©2022 by Daniel Bellido. 
Last update: 04/02/2026

bottom of page