Ivan Ivanov Mandev

Ivan Ivanov Mandev

Programmer

Metro Engine

Brief

Metro Engine is our Engine Programming subject final project.

Credits to all asset makers, especially to Jose García.

This video shows the main features of the engine running on PC and PS4. The PC version uses OpenGL as its graphics API.

The main features are:

  • Pseudo-data-oriented design (ECS).
  • Multithreading.
  • Deferred rendering.
  • Physically Based Rendering.
  • Image-Based Lighting.
  • Intuitive and useful UI integration with ImGui.
  • LUA as the scripting language for the simulation loop of the app. (Play/Stop functionality). Scripts must have BeginPlay() and Update().
  • Wavefront OBJ loading (with sub geometries handling and materials)
  • Post-processing: Tone-mapping.

This project was developed by:

  • Alvaro Soriaon Romero.
  • Ivan Ivanov Mandev.

You can check the in-depth explanations on how the engine was built on the PC version in this website: metro-engine.github.io