[FYI] tiago.costa
Original CL Desc
-----------------------------------------------------------------
Improvements to tracking of proxies requiring invalidation when raytracing geometry is streamed/built/made resident.
Context:
- The existing CachedRayTracingStateProxiesMap mapped [UStaticMesh -> Array of Proxies that need to be invalidated], however there was no way to map [FRayTracingGeometry -> Array of Proxies that need to be invalidated] since FRayTracingGeometry doesn't have a pointer to which UStaticMesh owns it. On top of that, not every FRayTracingGeometry is associated with a UStaticMesh.
- An alternative approach could be having a map [FRayTracingGeometry -> Array of Proxies that need to be invalidated] however that would require significantly more memory - O(#proxies x #LODs) instead of O(#proxies).
Change:
- Modified CachedRayTracingStateProxiesMap to use a more generic RayTracing::GeometryGroupHandle (int32) as key.
- Store RayTracing::GeometryGroupHandle in FRayTracingGeometry.
#rb aleksander.netzel
[CL 31016413 by tiantian xie in ue5-main branch]
Added ability to force immediate shutdown on all tasks and GPU readbacks. This means when we shut down the system, we no longer need to busy loop wait for all tasks to complete themselves.
Also modified readback synchronization code to launch fewer render thread commands, fewer synchronizations of render thread and GPU with the game thread.
Also upped the number of simultaneous renders allowed in editor, as that was the bottleneck for throughput. With a limit of 3, it can now usually maintain a throughput of 1 per frame, with a 3 frame latency. (Previously it would complete 1 every 3 frames because of the latency).
#rb jonathan.bard
[CL 31016257 by chris tchou in ue5-main branch]
- Allows for plugins to inject/remove content (actors) in a partitioned world
- Serves as a replacement for the experimental 'Content Bundle' feature
- Added new External Data Layer (EDL) Asset
- Added new Game Feature Action 'AddWorldPartitionContent' to control activation of an EDL asset
- Supports Data Layers inside a plugin (child of an EDL)
- Added builder to convert content bundles to EDL (UGameFeatureActionConvertContentBundleWorldPartitionBuilder)
- Feature is temporarily disabled by default and can be turned on using Editor Experimental Settings 'Enable World Partition External Data Layers' flag
#jira UE-204248
#rb JeanFrancois.Dube, Patrick.Enfedaque, Sebastien.Lussier
#tests QAGame PIE/-game/cooked, Regression test PIE/cook of latest game map, Tested PIE/cook of latest game map converted to EDL
[CL 31015614 by richard malo in ue5-main branch]
There is no longer a shipping node which is restricted to only render layer branches, so a testing-only dummy node was created as a standin.
#jira UE-205164
#rb Matt.Hoffman
#rnx
[CL 31015012 by chad williams in ue5-main branch]