[VisionOS] Halt Metal Passthrough Rendering Glitches
Under Audit
Unity 2022.3.x - Unity 6.x.x
Published 25 days ago
Users encounter issues with Post Processing and ARKit features when using Metal rendering on VisionOS, particularly concerning passthrough functionality and URP renderer settings.
When using Metal rendering on VisionOS, several issues related to passthrough and rendering features have been observed. Post Processing effects often fail to render correctly with passthrough, displaying the background color instead of applying effects to Unity scene objects. There is uncertainty about the feasibility of a passthrough-ignoring Post Processing stack for selective effects like bloom or color grading.
Similarly, the Visual Effect Graph's compatibility with the Metal rendering path has been a concern, although it appears to be achievable with Stereo RTs.
Additionally, accessibility to ARKit and world reconstruction features such as plane detection, image tracking, and meshing seems limited when utilizing Metal. This raises questions regarding the design of sample scenes that include these features, potentially suggesting a hybrid-rendering approach without clear documentation.
Furthermore, passthrough functionality through Metal in URP can be hindered by default URP renderer settings. Beyond disabling HDR, it may be necessary to remove the SSAO Renderer Feature from your URP renderer data file to achieve proper passthrough rendering. This requires manual debugging and is not always clearly documented."
- Verify that
HDRis disabled and theSSAO Renderer Featureis removed from yourURPrenderer data file when usingMetalrendering with passthrough. - Explore the
Stereo RTsconfiguration for enablingVisual Effect Graphfunctionality with theMetalrendering path. - Consult
VisionOSandARKitdocumentation forMetal-specific integration details, especially concerning world reconstruction features.
Editor's Note:
Related Posts Haven't quite found a solution to your problem? We think these posts might help you.
Content inspired by a Unity discussion post.