optimized BoneDataVertexBBuffer updates to only copy the data needed, saves memcpy time in the render thread
[CL 2516490 by Martin Mittring in Main branch]
* Enable with 'r.DistanceFieldGI 1' on console
* Surfel GI is currently disabled as it doesn't interop yet
* A GBuffer atlas is created for Landscape from components that can affect indirect lighting based on the current view
* Shadowing from a directional light is computed by reusing shadowmaps and ray tracing distance fields
* Lighting is computed for the atlas using GBuffer properties
* First bounce GI light transfer is computed for a receiver by iterating over all the nearby lit texels of the heightfield and treating them as Virtual Point Lights. Two gather regions are used, the larger one skips through the heightfield to achieve a larger bounce distance. Distance field AO is used to provide local shadowing.
* Material diffuse color not yet supported, and regions outside of the view don't have valid shadowing.
[CL 2436606 by Daniel Wright in Main branch]
Also add many explicit calls to CopyToResolveTarget to indicate the transition of a render target to be able to be used as an SRV. Soon to be replaced by a more specific RHI function.
Added r.CheckSRVTransitions for D3D11 on windows to check if any of these transition are missing.
Fixes a bug with RHIThreadFence when using PLATFORM_SUPPORTS_PARALLEL_RHI_EXECUTE
PLATFORM_SUPPORTS_PARALLEL_RHI_EXECUTE on PS4 now supports CMASK and HTILE enabled buffers.
#codereview lee.clark,gil.gribb,rolando.caloca,daniel.wright
[CL 2420986 by Marcus Wassmer in Main branch]
HZB is now always built and stored on ViewInfo.
SSR uses constant depth intersect instead of segment intersect for better quality near contacts.
[CL 2402625 by Brian Karis in Main branch]