Yesterday
Be able to fetch all light information with Light::Count() and Light::From(), while doing all optimization from tiled lighting etc Move light.hlsl to common/classes/Light.hlsl, start unfucking it, make it have same structure as everything else DynamicLight refactor Refactor StaticLight class, can do Light::From() to get all lights (static/dynamic) at once https://i.imgur.com/jqko5ON.mp4 Fuck of with light.environment, light.dynamic and light.static are just in Light.hlsl instead of own internal files Move shadow functions to Shadow.hlsl, much like BRDF.hlsl, will make it easy for us to upgrade, move LightMap definitions to Light.hlsl Vr_lighting never directly referenced from any of our hlsls now, tonemaps in lighting.fxc never used and even if used shouldn't be there Untangle this stuff Use ProbeLight::UsesProbes() and LightmappedLight::UsesLightmaps() to see if drawcall is using these instead of insane combo ifdefs directly, makes it easy to remove a combo too