I watched this talk from Apple and it mentioned only custom ShaderGraph shaders are supported, but then I looked closer and noticed that in Apple language “Immersive” = MR and “Fully Immersive” = VR.
So does that mean this restriction only applies to MR apps, and VR apps still do work with Handwritten shaders?
I just did some tests and it seems like the answer is yes. Handwritten shaders do work on the Apple Vision Pro in VR mode.
Here’s a video of my shader that cuts a hole in the overlay camera and reveals the base camera underneath: Dropbox - RPReplay_Final1707780989.mov - Simplify your life
…and here’s a screenshot, in case my video link doesn’t work:
All that you discovered is correct. In addition, you can use handwritten shaders to render to render textures, then use these render textures as textures on content visible in MR mode.
Also, keep in mind that while the custom function node supports a more limited syntax on visionOS, this can be a powerful took for expressing complex shaders and iterating more quickly if and when you need to author shaders for direct consumption in MR mode.
Hope this helps!