I want my graphics to run as fast as possible on low-end hardware, and I’ve seen static lighting is the best option for the best-look vs. speed.
I’m using stationary lights for better shadows and highlights on hardware that can handle it.
However, for low-end hardware, disabling the stationary lights obviously effects the overall look of the game, for example, removing highlights being cast through windows onto static objects.
How do you normally handle this visual-effects / lighting scalability trade-off?
In this case, the target low-end is Intel HD Graphics 3000, and Intel HD Graphics 4000.
On these chipsets, it seems that any non-static light is very taxing.
Here are a few more details on what I’ve been testing out for performance:
I have a Stationary Directional Light in a scene, outside of an enclosed interior room. There are a few windows, where the stationary light can highlight objects inside the room through the windows (specular reflection).
When this light is enabled, it causes a substantial drop in frame-rate performance on Mac hardware running HD 4000 graphics, and Windows hardware running HD 3000.
Testing this with “r.ShadowQuality” set to 0, increases performance substantially again, however it then has the side effect that moveable objects are lit as if they were in direct view of the directional light, making them look “blown out” in the interior room.
You will have to disable all real time lighting for those target devices and maybe even reduce the shadow quality for that HW spec only, and have everything on for higher end HW. You are basically using the CPU to do the calculations with slight boost but those chips are almost 6 years old I have 4000HD in my machine as well I use it drive my plasma tv only, my 1080 drives game engines. That chip has almost no power compared to dedicated GPU. Not sure how to setup which rendering features work with which each spec, but I am sure you can customize it for your needs.