* This fixes the bug where many unbuilt interactions during registration would get corrected by blueprint construction scripts but the stationary light would continue to think it was built
[CL 2496244 by Daniel Wright in Main branch]
MAX_FORWARD_SHADOWCASCADES is correctly defined for OutEnvironment.
Only render shadow maps that have been successfully allocated texture space.
fwd shader can deal with full range of MAX_FORWARD_SHADOWCASCADES.
limit shadow map renders to no more than MAX_FORWARD_SHADOWCASCADES.
reduce shadow map size to ensure all tiles fit within GMaxShadowDepthBufferSize.
Fixes UE-10282.
#codereview nick.penwarden, Rolando.Caloca
[CL 2466184 by Allan Bentham in Main branch]
1) Preshadows for self-shadow only primitives now correctly mask by the receiver and not the subject.
2) Self-shadow only objects are no longer included in whole scene shadows (view dependent whole scene shadows already worked).
#codereview Martin.Mittring,Daniel.Wright
[CL 2436763 by Nick Penwarden in Main branch]
per scene primitive checkbox, default is on for landscape
directional light property FarShadowCascadeCount and FarShadowDistance
todo: ray traced distance field shadows don't fade with it yet, non landscape objects makes with far should be excluded from ry traced distance field
[CL 2416911 by Martin Mittring in Main branch]
* Requires a Movable Skylight + 'r.DistanceFieldGI 1' + 'r.GenerateMeshDistanceFields' project setting enabled
* Provides a single bounce of Diffuse GI with bounce distance limited by OcclusionMaxDistance (default 6m)
* Virtual Point Lights are placed from the directional light by ray tracing the scene's distance fields, normal comes from SDF gradient
* Currently only placing 128*128 VPLs up to 40m from camera
* VPLs light irradiance cache samples using hemispherical disk light model, indirect shadowing is provided by the same cone traces used for Distance Field AO
* Irradiance is computed only at irradiance cache points (max every 8 pixels) and interpolated to the rest of the pixels
* Hardcoded half grey material color for now, and poor performance due to brute force VPL lighting
[CL 2390645 by Daniel Wright in Main branch]
New primitive component setting bAffectDistanceFieldLighting, useful for grass whose instance count overwhelms DFAO
Distance field volume texture allocations are sorted by size for better packing, and atlas is repacked on texture reallocation
[CL 2368153 by Daniel Wright in Main branch]
* Translucent shadows are now half res compared to opaque shadows, to keep memory usage under control
* New memory usage is 8mb for ShadowDepthZ, 8mb for PreshadowCache, 8*2mb for translucent shadow targets (unchanged), 12mb for largest cubemap shadowmap
[CL 2354996 by Daniel Wright in Main branch]