Fixes OpenXR by MaximilianEmel · Pull Request #1911 · stride3d/stride (original) (raw)

It's necessary because OpenXR doesn't have MirrorTexture implemented, and the OpenVR implementation was broken anyway. The whole logic there was flawed to begin with, because it meant that if you enabled PostFx, it would magically enable the Mirror, even if you had disabled it.

Here's the results of all combinations for reference:

VRSettings.VRDevice.MirrorTexture:

OpenXR + PostFx: Error on Startup (MirrorTexture doesn't exist)
OpenXR + no PostFx: Error on Startup (MirrorTexture doesn't exist)
OpenVR + PostFX: Bad crop - shows only upper left of each eye on Mirror
OpenVR + no PostFx: Bad crop - shows only upper left of each eye on Mirror

vrFullSurface:

OpenXR + PostFx: Good
OpenXR + no PostFx: Good
OpenVR + PostFX: Good
OpenVR + no PostFx: Good