Quick Tip #6: Optimizing performance of VXGI in UE4

Before optimizing VXGI, make a complete scene first (or at least a level block out) - many parameters depends on the environment.

Do not use specular tracing in very glossy environments (average environment roughness should be > 0.2) and with manually tuned reflection captures.

For the best performance do not use movable spot/point lights and use only objects with emissive materials.

You can also combine VXGI with static lighting for the best results.

It's better to not use tesselation with VXGI.

VXGI works with DX11 and higher.


Execute these commands in a console or place them in your DefaultEngine.ini config file:
r.VXGI.StackLevels=2 - colossal performance impact (default=5 and with default=1 performance can be even better)

r.VXGI.MapSize=256 (use only if you set stack levels to 1 or 2) - the quality of lighting

r.VXGI.Range 1200 or 1600 for big, open world locations.

r.VXGI.AmbientOcclusionMode 1 - turn on Voxel Ambient Occlusion
You can use only VXAO or VXGI. Diffuse tracing should be on for both cases.


PostProcessVolume settings:
Number of Cones=4
Tracing Sparsity=4
Use Temporal Filtering=On


Ruslan Nazirov

I am 25 years old developer. I have solid experience in programming and used to be a java developer for 4 years. Now I’m working on my own projects and games, based on Unreal Engine 4.