Apple’s broad embrace of VR this week shows that the company has had virtual reality support on its roadmap for quite some time. During a session at WWDC, Apple and Valve confirmed they’ve been working together for nearly a year to bring SteamVR and OpenVR to MacOS.
Though you might think that porting SteamVR and OpenVR to MacOS would be relatively straightforward—given that Steam for regular desktop gaming has been on the OS since 2010. But it seems there was quite a bit of development work to be done in order to make it happen, including a few missing capabilities which Apple built into the Metal 2 rendering API, at Valve’s request, in order to make it possible to render high performance VR on MacOS.
Collaborating for VR on MacOS
To that end, the companies have been working together on the project for nearly a year, said Rav Dhiraj, a member of the GPU Software Team at Apple, who detailed Metal 2’s new VR rendering features in a session at the WWDC conference this week.
“We’ve been working really closely with Valve over the last year to align our releases and both SteamVR and OpenVR are available to download in beta form this week,” he announced on stage.
Valve’s Nat Brown joined Dhiraj on stage to talk more about what it took to get SteamVR and OpenVR running in high performance on MacOS.
“Valve and Apple, we started working together more closely about a year ago. Our port to Metal from OpenGL didn’t cost us very much—Metal is a really cool API and it was critical for us to get VR up and performant,” Brown said.
He also confirmed that the companies have been working together on the project for nearly a year, with one of the most significant initial asks from Valve to Apple being the implementation of direct-to-headset rendering capabilities into Metal 2.
“Our biggest request to Apple a year ago was for this direct-to-display feature because it’s critical to ensure that the VR Compositor has the fastest time-predictable path to the headset display panels,” said Brown. “We also really needed super accurate low variance VBL (vertical blank events) so that we could set the cadence of the VR presentation frame timing and predict those poses accurately.”
Apple As An Active Participant
Brown seemed to paint Apple as not only supportive of Valve’s work, but an active participant in the process of getting SteamVR and OpenVR running well on MacOS.
“We hit some speed bumps [during development] around inter-process and inter-thread synchronization. Once everything else was working really well—Metal was blazing fast, we had really tight VBL—but we still were having some synchronization problems, but Apple helped us find better ways to signal and synchronize with low scheduling variance between all the processes and threads involved.”
After digging into the technical challenges of rendering a frame onto a VR headset with low latency, and explaining how developers can install SteamVR on MacOS to begin experimenting, Brown wrapped up his segmented saying, “Thanks to everybody at Apple for making VR shine on MacOS.”
SteamVR and OpenVR for MacOS make use of the advantages of Metal 2 in the forthcoming ‘High Sierra’ version of the operating system (though will technically run on MacOS 10.11.6 or higher). Developers can download a beta version of High Sierra today through Apple’s developer portal, and then install SteamVR through the MacOS Steam client and opt into the latest beta version. MacOS High Sierra will be available as a free upgrade on any Mac which supports the current Sierra release, however only the new, top-end iMacs and MacBooks with external GPUs that meet the VR Ready spec will be able to run VR experiences at the ideal level of performance.
Watch This Space
A year’s worth of collaboration on VR between Apple and Valve calls into question Oculus’ involvement with Apple and their intentions (or lack thereof) to support MacOS. It’s possible that the groundwork laid down by Apple and Valve’s work, especially relating to the VR-specific features of Metal 2, could make Oculus’ job of porting their platform to MacOS easier. But it isn’t clear whether or not that effort has begun, nor how long it might take if and when it does start.
For now, outwardly at least, it seems Valve and Apple are forming a strong relationship while Oculus has been not shown up to the veritable table. How this relationship pans out in the long run—especially with rumors of Apple developing its own VR headset—could have far reaching consequences on the future of the VR industry and its key players.
Update (7/1/17): Valve has reached out to clarify that while SteamVR for MacOS takes advantage of performance improvements via Metal 2 when running on High Sierra, it actually can work on the older MacOS 10.11.6 or higher. The article has been updated to reflect this fact.