- Platform: Windows, Linux
- Languages: C++, OpenGL 4.x
- Duration: 7 months
- Project: Two programmers discussing and working on every feature.
This is the final project of the graphics engine subject at ESAT Valencia. The goal was to create a Rendering Engine from scratch using C++ and OpenGL 4.x. At the beginning we had very few knowledge of how an engine has to be structured or even how OpenGL works. We had to learn as we create the engine, it led to many changes as we were in the development.
The minimum requirements was to support Multithreading, textures, postprocesses, shadows and a scripting language for scene loading. We then focused on supporting PBR for rendering and creating an agnostic API for graphics, core elements (input, window, etc) and audio.
- Component Orientated Engine
- Multiplatform (Linux and Windows)
- Graphics agnostic API
- PBR rendering
- Metallic-Roughness workflow
- IBL (Image based lighting) for indirect lighting and irradiance
- GLTF scene loader
- Shadow Mapping
- Lua – scripting integration
- OpenAL and FMOD – audio integration
- ImGui – UI integration