The Oculus Rift includes a pretty nifty feature when you add the Touch controllers: It more or less turns into an HTC Vive and, in fact, seems to be able to accommodate most SteamVR games out of the box. You don’t have to do anything to enable this feature; it just works.
The hardware itself, in terms of how players use it and even the number of buttons, is similar enough to not cause any issues when playing SteamVR games using the Rift.
“From a technical perspective, they're very similar,” Andy Moore, one of the developers of Fantastic Contraption, told Polygon. “Using Unity, to get a project up and running that can swap between them and use either only took us an hour for our craziest prototypes.” He’s stated in the past that the platforms are “almost identical.”
Other developers said similar things; it’s not that hard to make your game run on both the Rift and Vive.
“The Unity engine comes with the latest version of the Oculus and OpenVR (SteamVR) SDK in their latest builds,” Vertigo Games’, the developer of Arizona Sunshine, Richard Stitselaar said. “Other than creating two different builds, it takes minimal effort to support both platforms on our side.”
It goes even deeper
It’s not just that the Rift with Touch make most Vive games playable, but that SteamVR seemed to know that I was using a Rift with Touch and served me the Touch-specific version of Arizona Sunshine during my testing.
How is that possible?
“SteamVR [application program interfaces] allow you to query the manufacturer/hardware type, and various setup elements such as playable space, and lay your game out appropriately,” Moore explained. “The API even lets you programmatically pull 3D models of the hardware. This is probably in Valve's move to promote OpenVR, a write-once use-everywhere platform for all hardware, past and future.”
“SteamVR works wonderfully and we were surprised to see our game functioned just fine without us typing a single line of code, but it doesn't change the fact that most Oculus Touch setups will still be forward-facing by default; you still have to design a game to use each piece of hardware specifically,” he continued. “To this end, when [Fantastic Contraption] launches in SteamVR or in Oculus environments, we actually spin up different defaults and guide the player slightly differently. We want each person to have the best possible experience with their hardware.”
This is kind of a big deal. The Rift with Touch controllers can and will play games designed for the Vive, and if developers decide to release their Touch-optimized games on Steam as well as Oculus Home you can access that version of the game just by connecting a Rift instead of a Vive.
“Valve is actually creating an awesome system where everything just works, it mimics the Vive and that’s pretty awesome. It removes a lot of headaches for devs,” Dirk Van Welden, the developer of Space Pirate Trainer, said.
The one aspect of the Rift that isn’t plug and play is haptics; the Vive handles rumble differently than the Touch controllers, and this means you won’t “feel” the interactions in your hands unless developers go out of their way to adapt this aspect of their game for Touch controllers.
“We've written a wrapper that normalizes between the two platforms but it is extra effort on the developer's part to figure out how to parse the intended experience for each platform,” Moore told Polygon. “I won't say we've fully solved for this yet — it'll feel different on both platforms — but in upcoming patches we'll improve on our formulas.”
Welden said that if players complain or find that some aspects of the Steam version of Space Pirate Trainer don’t work using Rift hardware, he’ll just put the Oculus-native version on Steam as well as Oculus Home. You’ll be able to launch the game using the Vive or the Rift on Steam, and then you’ll be able to select the version that’s optimized for your hardware.
Wait, but if they’re so similar ...
The Rift with Touch controllers and the Vive may be functionally identical, but there are certain things you can’t take for granted from players using the Rift. The standard sensor configuration, for instance, doesn’t allow you to turn 360 degrees without losing some tracking on the controllers.
Developers can take 360 degree movement for granted on the Vive and design for it, but players on Rift hardware may not have their sensors set up to allow that sort of movement.
“The different stuff was actually not having room-scale as a default,” Van Welden explained. “With the Vive you know for sure that people have a 360-degree setup, you’re not sure about that with the Oculus Touch. That’s the main difference.”
Space Pirate Trainer was a natural fit, as it already asks the player to stand facing one direction. But games that are built with 360 degree tracking in mind will require more work to make sure players on the Rift platform will have a good experience.
“The Vive supports room-scale by default vs. the Rift that offers this optionally,” Stitselaar said. “This is a bit of a challenge when designing your levels and play areas. We came up with a system — being able to rotate the teleportation area — that works great in room-scale and with front trackers only.”
That being said, you can play Arizona Sunshine using Oculus’ experimental 360 degree tracking with two or three sensors, but they don’t want to assume players will be able, or willing, to try one of those configurations. So they had to think in terms of 180 degrees as well as 360 degrees for the SteamVR and Oculus releases of the game.
But developers are finding other interesting ways to support both approaches.
“In Fantastic Contraption, we support natural room-scale 360 experience for larger spaces and have a brand-new ‘Kaiju Update’ that allows you to shrink the play space down small enough to fit on your lap,” Moore said. “This required a lot of work and isn't compatible with all games I've played, but I think these kinds of questions should be answered before you start developing your game, not after. Play to the strengths of VR, don't try to fit your idea into VR. Design your game first, then choose the hardware it'll work best on.”
Job Simulator is another game that’s out for both SteamVR and Oculus Home, and the game “knows” what sensor configuration you’re using with the Touch controllers and the size of your play space; it will adjust itself, sometimes altering the layout of rooms entirely, in order to give you the best experience.
“We have done a ton of work to support multiple sensor configurations and make sure players have the best experience,” Alex Schwarz of Owlchemy Labs told Polygon. “There’s nothing more frustrating than reaching for an item that is out of tracking and not being able to grab it so we built multiple different layouts of each room for various sensor configurations and automatically swap between them depending on the setup and room size. It was a ton of work with the hopeful end result that folks simply boot up the game with their particular setup and everything is within reach and automagically delicious. That work to support every type of room setup will continue to become more robust as the Oculus Guardian API evolves and we can get more data about various room configurations.”
He also explained in great length the differences in hardware that may seem subtle, but thinking about them and adjusting small, or large, details of your game can be the difference between a good VR experience and a great one.
Schwartz stressed that Oculus isn’t asking developers for both 180 and 360 degree support from Oculus Home games, but you can still add it for players who want to set up their sensors for 360 degree movements.
“For Oculus’ store, Oculus' official stance on roomscale/360 is that it's extremely ‘experimental’ and that devs likely won't support it,” Schwartz said. “We went the extra mile early and added in roomscale/360 support. How it works is that if you have three cameras, we detect that third camera and then enable our 360 layouts. We also determine the best sized layout — small, medium, or large — for your particular room so yes, you'll have a bigger play space to play around in and objects will be re-arranged.”
So the physical layout of each room will actually change depending on your play space. “Our analogy is that small laundry rooms use vertically stacked washer driers while larger laundry rooms use side-by-side setups, so we applied that logic when building our various sized rooms and laid everything out manually for every size,” Schwartz said. “Lots of work, but worth the effort so that everyone who launches the game gets a fantastic experience depending on their setup.”
Multiple developers have explained that the angle of objects you’re holding is different in the Touch controllers versus the Vive controllers, and that has to be addressed in the game whether you’re playing on Steam or Oculus VR. But once that work is done, and the game supports 180 and 360 degree tracking and different-sized rooms, developers can not only release their games on both Oculus Home and Steam, but they can push the version that’s optimized for the Rift onto Steam and Rift owners will see the optimizations no matter where they buy the game.
To be clear, this isn’t 100 percent compatibility. Google Earth VR gives you an error message that states the program “only supports HTC Vive at this time.”
But, overall, SteamVR seems to support the Rift and Touch controllers just fine. Developers are going above and beyond what Oculus expects in order to support players who are interested in 360 degree tracking and may want to buy their Oculus games on Steam instead of Oculus Home.
This doesn’t go both ways
This cross-compatibility doesn’t work in the other direction; there is currently no easy way to play Oculus Home exclusives on the Vive, although third-party solutions do exist (compatibility is hit or miss, however).
"Our top priority has always been pushing the state of VR forward,” Oculus told Polygon when we asked if this would change in the future. “We’ve been focused on doing so by making Rift and Touch the best possible experience on PC, requiring tremendous engineering and native integration between our SDK and VR hardware. A wide and growing range of games and experiences rely on critical software features like Asynchronous Space Warp, Asynchronous Time Warp, and the hand presence functionality provided by Touch. You may see support for other hardware devices in the future, but maintaining the highest possible quality for all Oculus users is our primary focus.”
Oculus has actually been pretty consistent on this stance. Oculus founder Palmer Luckey addressed this issue eight months ago on Reddit when someone asked about Vive support for Rift software.
“We want to natively support all hardware through the Oculus SDK, including optimizations like asynchronous timewarp,” Luckey wrote. “That is the only way we can ensure an always-functional, high performance, high quality experience across our entire software stack, including Home, our own content, and all third party content. We can't do that for any headset without cooperation from the manufacturer. We already support the first two high-quality VR headsets to hit the market (Gear VR and Rift), that list will continue to expand as time goes on.”
When asked what is happening and who is at “fault,” Luckey stated that he is “not going to point fingers in the middle of our own launch. Hopefully things work out in the long run, I am trying my best. It is pretty obvious what would benefit Oculus and our unparalleled VR content investment — heck, the Oculus Store did not even launch with our own hardware, people have been using it with Gear VR for a long time now!”
Vive owners would likely love for this to happen, as Oculus has a high number of fun, exclusive games, and Luckey has heard them. He said the situation involves “lots of losers, only one clear winner.”
“Technically this probably should not really be an issue,” Stitselaar said. “It is up to the platform holder to decide on whether they want to do this or not.”
There are some interesting layers to this, as one of the reasons SteamVR works so well through the Rift and Touch controllers is that the Touch controllers can do everything the Vive controllers can do, but the Vive controllers can’t match the finger-tracking technology built into the Touch controllers. It also sounds as if Oculus would be fine allowing Vive owners to buy Rift games ... as long as Valve and HTC allowed the Oculus SDK to run on Vive hardware.
Some developers are hopeful that the systems will be more open with each other in the future, however.
“I really hope Oculus will make their platform a bit more open and play games made for other hardware, but at this time I believe —could be wrong — that the only titles you can play there are ones sold on the store,” Moore said. “I've not had any luck getting anything to work outside of the system and I haven't heard anything from them in that regard. However, open ecosystems are usually more beneficial to the bigger storefront, which Steam definitely is right now. It might purely be a business move until they get a bigger market share in the future.”