Steps to reproduce:
- Open an empty/new URP project
- Install XR Plugin Management -> OpenXR for Standalone platforms (not Android)
- Add a Monobehavior script to the scene and set XRSRPSettings.useVisibilityMesh = true; in Start()
- Connect a Quest 2 device and open Quest Link
- Enter Play mode and confirm that the Game view is streaming in stereo on your device
- Connect the profiler to Play mode and ensure GPU profiling is enabled
- After profiling, find RG_UberPost in the Profile's hierarchy view and notice the ~0.4ms value in frametime (XR Visibility Mesh pass should be nested under it)
- If XR Visibility Mesh is not visible, you may need to run adb shell setprop debug.oculus.visibilitymask.enable 1 in CMD
- Save Profiler snapshot
- Set useVisibilityMesh = false; (and visibilitymask.enable 0)
- Profile again, and notice RG_UberPost frametime is listed as ~0.2ms (there should not be XR Visibility Mesh pass nested under RG_UberPost this time)
Expected result: Visibility Mesh provides a performance gain
Actual result: Visibility Mesh worsens performance within an empty scene