[FYI] Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
Remove unnecessary private include path
#rnx
#jira UE-177808
[CL 24352016 by joe kirchoff in ue5-main branch]
The shader code output contains a little bit of plaintext such as I/O identifiers and the shader name, which was generated for the DXC backend in a way that prevents caching.
This unifies the shader name in the output code and improves the cache hit ratio for a Lyra cook from 0% to roughly 50% cache hits (for certain platforms).
#rb Jason.Nadro, Carl.Lloyd
#fyi Brian.White, Arciel.Rekman, Brandon.Schaefer
#jira FORT-548603
#preflight 63e26c6c07207b2570ba2d5b
#rnx
[CL 24050212 by Laura Hermanns in ue5-main branch]
* Significantly reduces the size of shader debug data and improves shader compilation time (reducing parsing cost in the native shader compiler)
* Remove "experimental" label for the feature
#rb Jason.Nadro
#preflight 63d455d9be1970f8824c3f9b
[CL 23894592 by Yuriy ODonnell in ue5-main branch]
* Enabling requires re-building a metalpp with appropriate flags/defines set along with an OS version that supports the RT headers/libs.
#preflight 63c72f1a0225f00e14c05c46
#jira none
[CL 23750025 by zack neyland in ue5-main branch]
* Add code to all shader format back-ends to take dead code removal into account when computing the version ID
* Not enabled in Metal and OpenGL back-ends (require further testing)
#rb dan.elksnitis
#preflight 6390f1f15c5308d18c7364fb
[CL 23433448 by Yuriy ODonnell in ue5-main branch]
Serialize the payload size as part of the raytracing shader so it can be examined in the RHI layer.
Validate that the RTPSO is configured with the appropriate payload size.
Add macros to ensure the payloads have the expected size
Ensure that all raytracing pipelines explicitly bind a miss shader
Add a shared shader header to implement static asserts for those shader compilers that support them (like dxc).
Fix payload type on main deferred reflection raygen shader
Fix incorrect raygen shader included in the deferred RTPSO list for RTGI
Don't add builtin shaders to the RTPSO from the RHI layer as these are unlikely to ever match the required payload type
Add new method to register payload types so that plugins can more easily describe custom payloads they may be using (up to a maximum of 32 unique payload types since we use a bitmask to represent payload sets).
#rb Yuriy.ODonnell
#jira UE-157946
#preflight 636aff4363037c102679f13a
#preflight 63869dde170bc34a93e8c90e
[CL 23337139 by chris kulla in ue5-main branch]