We’re using the iOS CloudXR SDK for our Zapbox PC VR streaming solution. The background on the setup is described here.
I’ve noticed the latest SteamVR update 2.8 does some reprojection weirdness when opening the dashboard over a VR app. The weirdness then persists when the dashboard is closed.
These client settings are potentially relevant. We do a late-warp reprojection on the iOS device side so wanted to disable Steam doing any itself, and using VVSync for I hope the lowest latency.
_receiverDesc.deviceDesc.disablePosePrediction = cxrTrue;
_receiverDesc.deviceDesc.disableVVSync = cxrFalse;
Here’s a video of the received stream for the left eye (captured with cxrDebugFlags_CaptureClientBitstream but re-encoded for easier playback in the web)
Two things to note:
- It seems SteamVR itself starts reprojecting the content layer when the dash is shown, and keeps doing so when it is hidden
- After this point, some of the frames have the corners masked and some do not, seems to alternate from one frame to the next. Most obvious towards the end of the video where there is less rotation.
SteamVR 2.7.4 doesn’t show this behaviour. It’s possible to revert to it from the Steam library page by going into “Properties → Beta” from the cog icon and selecting the “previous” channel.