PBR Renderer
This was the first project of my second year at AIE, To complete the assessment I had to create a basic OpenGL Renderer that could load in a model and have a moving light but I got carried away.
Key-Systems/Mechanics:
Model Loading
Shader Programming
OpenGL
GLFW
GLEW
IMGUI
PBR Lighting
Texture Manager
Model Manager
GameObject Manager
Hierarchy System
Material Manager
Inspector
Profiler
This was my third OpenGL renderer as I had attempted 2 the year before to get a heads up for the second year assessment.
This is still a work in progress engine as I am currently working on implementing shadow mapping.
This project was easily one of my favorite projects as I never ran out of new things to add or improve and it helped me to further understand how C++ works as a whole and to be able to manage a large codebase that contains 20+ different scripts that are all working together to achieve what is known as a physically-based renderer that can renderer close to real lighting in realtime by using multiple textures per material.
I am using IMGUI which is a library used to create a GUI for the user to edit the scene during runtime this includes creating new materials, creating new objects, creating new light, and even editing all objects and materials.
I worked weeks on this project at the start but have been preoccupied as of recently but I would have easily spent 4+ months straight programming this engine as graphics programming is really intriguing to me and I would love to make more engines in other APIs such as DirectX12 and Vulkan.