I have been working on a game that takes place inside of a house at night time. I have blueprints for lights that can be turned on and off, so the lights are dynamic. My problem is that to actually light the rooms well I need large attenuation radius on them or use more lights which severely reduces fps. I have tried using post process effects (Gamma, contrast, etc.) but when they’re changed enough that rooms are lit, there are very obvious artefacts. I’ve tried using exposure, both manual and automatic but couldn’t find a solution that let the room be dark with the light off and not overly-bright with the light on as well as the auto exposure being inconsistent and resulting in dark spots anyway. Furthermore, the lumen global illumination results in blotchy lighting artefacts that are only solved by cranking the final gather quality up really high, which also results in a significant hit to the performance.
Is there a workflow or a technique for dynamically-lit interiors that I’m missing?
My specs are as follows:
CPU - Intel Core i7 5930K @ 3.50GHz
RAM - 32.0GB Unknown @ 1066MHz
GPU - 4095MB NVIDIA GeForce GTX 1070
If you’re trying to light a whole room with a spotlight pointed at the floor without having to crank the light up so high that it’s blowing out the floor you need to either increase the indirect lighting strength of the light and/or increase the brightness of the floor material.
You might actually need to increase the values of all of the materials in the room, as anything with a value below ~0.75 will absorb a lot of light and prevent bouncing.
Really, you probably shouldn’t be using a spotlight for lighting a room, a point light with an IES texture will be better. You could also try disabling inverse square falloff and reducing the light falloff to keep its influence more contained and get better performance.
What kind of target performance are you aiming for and at what resolution? A 1070 is a pretty low end GPU for Lumen. You might be better off using static lighting and either switching between two different lighting scenario levels for ‘lights off’ and ‘lights on,’ or using a single baked lighting level and post-process to disable direct and indirect lighting when the lights are off and disable the post process when you turn them on again.
Since I made this post I just moved away from Lumen entirely and I have no frame loss at all. It was my mistake to assume Lumen was just the new default that everyone should use. I really didn’t want the game to require crazy specs to run. Switching to the deprecated illumination mode pretty much solved all my problems.
I wasn’t aware of IES textures though, I’ll be looking into that to make the lights look better, thanks for the suggestion.