5.8 Translucent objects always in shadow- CSM directional light.

Summary

After upgrading from ue5.4 to ue5.8, all shaders using surface forward shading seem to be perpetually in shadow. This issue only occurs when the object is far-ish from the origin.
The shadow starts gradually becoming black at about 100000 cm from the origin.

Interestingly the object remains in shadow even if you turn shadow casting off on the directional light.

What Type of Bug are you experiencing?

Rendering (Graphics / Niagara)

Steps to Reproduce

Ensure project setting are set to use CSM shadows, not VSM shadows.
Make a new empty with a shadow casting directional light in it.
add an object to the scene with a forward shaded translucent material on it.
move object 100000 cm away from origin.
see it becomes black.

Expected Result

Translucent object should always receive light from directional light, providing nothing is blocking the light.

Observed Result

Translucent object is always black/in shadow, when far from origin.

Affects Versions

5.8

Platform(s)

Windows

I have found the cause!
Epic, I don’t know if you even read these things, but incase you do, I will lay out the issue for you:

The GetLightFadeFactor function is called for directional lights.
This function fades lights out depending on their screen size and culling settings.

Since Directional light types are theoretically infinitely large, screen-size based culling makes no sense here - it breaks if you set your MinScreenRadiusForLights project setting to a high-ish number like I have.

Now you know the cause, the fix is quite simple. Skip the screen-size stuff for directional light-types.