2D ENGINE · OPEN SOURCE

Ideas in code.
Worlds in
motion.

A C++ game engine to explore what you can build. 2D rendering, scenes, audio, and tools in an architecture you can understand from start to finish.

>_C++20 / SFML 3.1 / Your next idea.
Awesome Engine / Runner2D
Actual Runner screenshot: a character runs between obstacles across the rooftops of a lit-up city.
RUNNING ON AWESOME ENGINE↗
BUILT ON
SOLID FOUNDATIONS.
C++20◈ SFMLTGUI1.13△ CMakeView technologies ↗
01 / Inside the engine

The pieces to bring
your ideas to life.

From the first event to the last pixel. Concrete systems working together, with their implementation open for exploration.

Also: resources, particles, interface, JSON saves, and screenshots.Explore the engine →
02 / Architecture you can understand

From code to screen.
No black boxes.

The engine coordinates. The scene defines the game. Managers handle the resources and systems you need.

01SceneScene::Render()
02RenderTextureOff-screen drawing
03Bloom + MonitorGLSL post-processing
04WindowGUI + cursor + display

A representation of the pipeline implemented in RenderManager.

Explore the architecture ↗
03 / Made with Awesome Engine

Code comes to life.

Open showcase ↗
Actual Runner gameplay with a layered city, obstacles, and distance HUD.
ENGINE SCENE

Runner

A city that never stops.
Run, jump, and slide.

ParallaxSpritesParticlesAudio
See the game in action ↗
04 / Start with the essentials

Read the code.
Understand the engine.
Build what comes next.

A C++20 foundation, dependencies declared with CMake, and documentation connected to the source code.

Browse documentation ↗
Engine / Source / Main.cpp
int main() {
  Engine engine;

  while (engine.IsRunning()) {
    engine.ProcessEvent();
    engine.Update();

    if (!engine.HasFocus()) {
      sf::sleep(sf::milliseconds(10));
      continue;
    }

    engine.Render();
  }
}
Actual engine loop · View source ↗
THE NEXT STEP IS YOURS

Open the code.
Spark an idea.