Earlier this week I installed Windows 11 – but as a VR user I already regret it.
It’s not that it’s a bad operating system. In fact, when it comes to using regular applications and games I already prefer it to Windows 10. The design is clean, modern, and far more consistent than the visually discordant mess of Windows 8 & 10.
But as soon as I tried using a Quest 2 to play PC VR via Oculus Link, my appreciation for the new OS disappeared. Moving my head or hands I noticed a constant visual juddering, enough to make me feel sickness within a matter of seconds. The issue happened both with native Oculus titles and SteamVR, and across both wired Oculus Link and wireless Oculus Air Link.
I immediately suspected a performance issue, but both the Oculus Debug Tool and any in-game performance counters showed no dropped frames. My system was maintaining 90 frames per second with no drops. So what was causing the stuttering?
By switching through the modes of the Oculus Debug Tool I quickly discovered the Oculus compositor itself was dropping frames (in the screenshot above my headset was set to 90 Hz mode). If you’re not familiar with the term, the compositor is the constantly running software service that a VR app sends its rendered frames to. The compositor applies timewarp or spacewarp when needed, overlays system UI, and makes sure to send frames to the GPU at the right time. The compositor should always be running at the framerate of the headset’s refresh rate – if it isn’t, something is going badly wrong.
A quick Google search shows dozens of other Quest owners reporting exactly the same issue on Reddit and the Oculus forums.
Trying Virtual Desktop instead, I found the same issue in native Oculus titles. But using Virtual Desktop with SteamVR, the issue went away. I didn’t experience the stuttering anymore and Virtual Desktop’s performance overlay shows no dropped frames. That’s probably because, whereas SteamVR passes its frames to the Oculus compositor when using Oculus Link, Virtual Desktop instead has its own OpenVR runtime.
I’ll explore potential solutions to this problem over the weekend. If I can’t find one, I’ll revert to Windows 10.
If you too took the gamble with Windows 11 this week, let us know how it went in the comments below.