I have a function that does this…
if(FastGraphicsEnabled)
{
ConsoleCommand("scale set DynamicLights false");
ConsoleCommand("scale set DynamicShadows false");
ConsoleCommand("scale set LightEnvironmentShadows false");
ConsoleCommand("scale set MotionBlur false");
ConsoleCommand("scale set AmbientOcclusion false");
ConsoleCommand("scale set Bloom false");
ConsoleCommand("scale set Distortion false");
}
else
{
ConsoleCommand("scale set DynamicLights true");
ConsoleCommand("scale set DynamicShadows true");
ConsoleCommand("scale set LightEnvironmentShadows true");
ConsoleCommand("scale set MotionBlur true");
ConsoleCommand("scale set AmbientOcclusion true");
ConsoleCommand("scale set Bloom true");
ConsoleCommand("scale set Distortion true");
}
I haven’t tested those one at a time on a low-end system to see how much performance they squeeze out, and I haven’t tested it on DX11, but it seems to help my players squeeze a few more frames per second.