A simple, real-time PBR (Physically Based Rendering) engine built while learning from learnopengl.com.
Snapshot of the current progress. 3D model by Berk Gedik is licensed under Creative Commons Attribution.
| Feature | Status |
|---|---|
| Model loading using assimp | Done |
| Basic GUI setup using Dear ImGui | Done |
| Diffuse, Specular and Normal map support | Done |
| Blinn-Phong lighting | Done |
| Gamma correction | Done |
| Skybox support | Done |
| Anti-aliasing | To do |
| Shadows | To do |
| HDR (High Dynamic Range) | Done |
| Bloom | Done |
| SSAO (Screen-Space Ambient Occlusion) | To do |
| PBR lighting | Done |
| Image-based lighting (IBL) | Done |
- Download the latest release
- Extract the archive
- Run
Release/LuminaEngine.exe
Pan - Move the mouse while holding the Right Mouse Button
Fly-through - Using W/A/S/D keys
- OpenGL 3.3 or above supported graphics hardware
- Git
- CMake
- vcpkg (Make sure to set the VCPKG_ROOT environment variable)
- Clone the repository
git clone https://github.com/AmilaCG/lumina-engine.git
- Go into LuminaEngine directory
cd .\lumina-engine\LuminaEngine\
- Make a build directory and navigate into it
mkdir build; cd build
- Setup CMake
cmake ..
- Build
cmake --build .
- Run
cd .\Debug\; .\LuminaEngine.exe
Similar steps can be followed for Linux platforms (haven't tested on Linux)