🦍 Robust 2D Game Engine in C++ for advanced gameplay
Built on SDL2 and OpenGL, with modular systems for complex game architecture.
Gorilla 2D is a modern and extensible 2D game engine written in C++. It is designed for developers building medium to large-scale games with advanced rendering, physics, entity systems, and tools.
Gorilla 2D provides a clean modular architecture built on top of SDL2, OpenGL, and custom ECS — ideal for platformers, strategy, arcade, and simulation games.
- SDL2 + OpenGL accelerated renderer
- Custom Entity Component System (ECS)
- Sprite batching & texture atlases
- Physics integration (Box2D or custom)
- Input abstraction layer
- Scene graph & object hierarchy
- Audio system (SDL_mixer)
- Scripting integration (Lua planned)
- Debug UI (ImGui)
- Asset pipeline (images, tilemaps, audio)
- C++17+
- CMake 3.15+
- SDL2, SDL_image, SDL_mixer, SDL_ttf
- OpenGL 3.3+
- ImGui (optional)
- Box2D (optional)
- Linux, Windows, macOS
- Clone the repository
git clone https://github.com/your-org/gorilla-2d.git
cd gorilla-2d- Configure and build with CMake
mkdir build && cd build
cmake ..
cmake --build .- Run the demo
./gorilla2d-demosrc/
├── core/ → Main engine loop, time, config
├── graphics/ → Renderer, textures, batching
├── ecs/ → Entity Component System
├── input/ → Input manager
├── audio/ → Sound & music
├── physics/ → Physics world and colliders
├── scripting/ → Lua bridge (optional)
examples/ → Sample games
tools/ → Editors and asset tools
include/ → Public headers
This project is released under the MIT License.
© Gaming Innovators — Build powerful 2D games with confidence.
- SDL2
- OpenGL
- Dear ImGui
- Box2D
- Contributors & Indie Devs