- Update to Metal Shader Converter 2.0 Beta 4 which added support for quad derivatives in Compute
- Reduced max number of shaders per library due to increased RAM usage in cooks
#rb zack.neyland
#jira UE-223492
[CL 36754144 by carl lloyd in 5.5 branch]
Save up to 16MB on some platforms.
#rb daniele.vettorel, danny.couture, Kenzo.Terelst
#tests 66d8b4154a47dde1dd226334
#ushell-cherrypick of 36036431 by serge.bernier (first of 2 submits)
[CL 36747837 by serge bernier in 5.5 branch]
- Fixed scissor dims when rendering with RT-less rasterization
- Removed redundant Metal state calls
#rb Zack.Neyland
[CL 36340785 by carl lloyd in 5.5 branch]
Enabling it will force a multipass rendering where GBuffer and SceneColor are resolved to a system memory
[CL 36327269 by dmitriy dyomin in 5.5 branch]
- Updated MSC to latest version 2.0 beta 3
- Removed MTLBufferPtr to make deallocations more explicit
- Re-wrote MetalTempAllocator to be a simple buffer allocator as the heap allocator had a huge perf overhead when used with Bindless
- Fixed use after free in deferred delete
- Limited SM6 to MacOS 15
Changes in collaboration with Apple:
- Reworked residency management
- Replace manual resource binding/pre-draw steps with IRRuntime helpers
- Added vertex layout hashing support for MSC vertex descriptors
- Replaced VertexBuffers cache struct with MSC IRRuntimeVertexBuffer
- Fixed texture reference update by adding an texture override in SRVs (this way the texture reference SRV don???t revert to the default resource when the view is invalidated).
- Fixed some page faults by removing the side table allocation with temporary allocations
#jira UE-223489
#rb Luke.Thatcher
[CL 36227379 by carl lloyd in 5.5 branch]
- Removed deprecated device checks
- Fixed issue with Vertex Color selecting the incorrect format
#jira UE-223624
#jira UE-221715
#p4v-cherrypick 36201725
[CL 36202207 by carl lloyd in 5.5 branch]
* Remove SetInitializer from RayTracingGeometryRHI
* Add missing RHI fence after building acceleration structures
* Store FRayTracingGeometry in FRelevantPrimitive and use its initializer to get number of segments because accessing RHI object is unsafe here.
#rb tiago.costa
#tests replay run on all platforms
#rnx
[CL 35939167 by aleksander netzel in ue5-main branch]
-VisionOS 1.x vs 2.x defines set so we can compile for both.
-MetalRHI refactor updates.
-Compositor pause state implemented (meaning you can take the device off your head and put it back and your app will continue running).
-Improved shutdown behavior (still crashes, but later).
-cp_layer_ functions protected by mutex locks.
-Tested with visionOS 2.0 beta 7 + Xcode 16 beta 6 and with visionOS 1.1 + Xcode 15.3.
#jira UE-218027 UE-219571
[REVIEW] 35669997
#rb carl.lloyd
[CL 35743090 by jeff fisher in ue5-main branch]