Working on the rendering pipeline. Refactored the old pipeline to support multiple techniques in two main pipes: deferred and forward. Refactored the shader system to compile shader “snippets” to facilitate modular design. That way I can re-use pieces of shaders where I need them to better support different user quality settings.
Implemented ambient light, the easiest of them all! Next, implemented a two mode directional light that supports normal maps and specular power/intensity maps. By two mode, I mean in high quality, the system uses per-pixel lighting with the maps, and in low quality it uses per-vertex lighting with no maps.
Also implemented a downsampling and gaussian blur technique to use with shadow maps, SSAO, bloom and various quality levels.
All in all, really happy to be back at it.