I just wanted to collect problems and workarounds for GPU Lightmass.
Bugs
Meshes randomly stop casting baked shadows
Cause: Shaders don’t regenerate to cast raytraced shadows. (probably?)
Here is an intersting post about it: Epic's GPUlightmass - #543 by Jimbohalo10
Fix Options:
-
You need to force a recook of the shaders by deleting the dcc.
-
Or changing a property in the material which makes it a material which was not already cached. (For example by adding a material parameter which doesn’t affect the material)
-
Or perhaps enabling Shader Model 6 under Project Settings → Windows will fix this pemanently? Or is it just because it will retrigger shader compilation?
-
Or try to disable/enable the GPU Lightmass plugin. This will supposedly clear the cache.
Landscapes don’t cast shadows/broken shadowmaps
Cause: This seams to be a seperate problem. No idea why.
Fix: A fix was discussed here: GPU Lightmass not working on Landscape - #17 by Jimbohalo10
A permanent fix is coming in 5.4.
Lightbleeding on edges
Cause: For me it was just the shadow casting thing again. The floor stopped casting shadows but still recieved shadows which resulted in the light bleeding.
Fix: The same as with the shadows not casting shadows anymore. (I think)
Min LOD settings bug
Changing min LOD can break lightmap generation and usage.
The lower image uses min LOD 1 in the Static Mesh settings. The upper not. The first has set LOD0 to be the same amount of triangles as LOD1 in the second so there should be no difference at all.
But it is even more broken. When the LOD changes to an even lower one than the min LOD the lightmap is removed completly?
This happens only if you changed the min LOD before lightbaking. If you changed it after everything works fine.
Fix: Don’t use the Min LOD or only after baking.
Skylight is needed for reflection fallback but influences scene
The Skylight will lit static baked meshes. It can be removed/disabled but then there is no fallback for reflection captures. (Not 100% sure how the behavior was)
Limitations
Volumentric lightmaps level streaming it not supported
But here is a workaround: Volumetric Lightmap Streaming Workaround - Multiple VLM - GPU Lightmass Memory Limit
Behaviors
Volumetric shadowmaps have no directionality
This depends on your lighting setup. If your directional light is set to static the lighting gets baked into the volumetric lightmap. If it is stationary it will not bake the directional light into the lightmap.