With the ubiquity of Unity and Unreal being used in traditional game development, it's tempting for experienced devs to say to themselves, 'Why shouldn't I make a VR game?' After all- it's an emerging market and even tired and worn out concepts can become fresh and new when built for VR.
Building for VR is not the same as building for desktop or console gaming though...
There are a lot of really fundamental concepts that change when you move to building for VR. So many, in fact, that no one single article will probably cover them all. But we will attempt to go through some of the biggest considerations that we've learned at Block Interval as we've switched from making desktop games to VR games.
This is the one we've spent the most time researching. Comfort is the next evolution of user experience- and any game without comfort options in the menu is going to get a thumbs down from users. Some users have iron stomachs, but some are extremely sensitive to any kind of movement in VR. For those weak stomachs, you will need to provide lots of ways to tweak the experience. For example, providing a way for users to enter 'blink mode' (essentially eliminating the animation between points while moving), will ensure that even the weakest stomachs will be able to play your game. Alternate control schemes, supporting as many input devices as possible, and doing lots and lots of testing will be just some of the ways you can make your players experience more comfortable. Take a look at what Triangular Pixels is doing for their comfort options:
It's been pointed out time and again but it's worth repeating- we can no longer snap interfaces to the player's face like we did in traditional games. Interfaces now need to exist within the game world or mounted to some kind of external zone rather than the head. Buttons and menus will also need to change to accommodate field of view. For the current generation of VR headsets- resolution is fairly low compared to a PC monitor, so text and buttons also need to be larger and more distinguishable. A lot of other considerations need to be made for interface in VR- and we would highly recommend watching this overview by Mike Alger:
Sound and Music
Positional audio is a huge part of making an experience immersive. Game developers will need to put in extra effort to ensure that the sound and music in their games draw you further into the world. If you just slap music and sound effects into your game with no consideration for the environment they come from- players will feel like they are just playing a desktop game on screens in front of their eyes rather than feeling immersed. The days of one person creating a good game are soon drawing to a close- we will need an army of sound and music professionals to help us build our worlds. Programs like wwise will help us get there.
Like it or not, VR may just kill WASD movement. Moving a player around is quite a bit more complex in VR because there are no more simulated barriers between the user and the environment (such as a computer monitor). The approach you take to movement will depend greatly on what kind of game you're creating. Games with some kind of ship or car seem to work really well in VR because the environment is moving around the vehicle, whereas making a simulated body doesn't feel as immersive. Do a lot of testing- and don't assume that just because you have movement controls that work in traditional games, you've found a solution that works in VR. Make sure you taken standing vs. sitting into account. And if you're making a Vive game- make sure you understand what kind of room dimension options you have. Take a look at what Stress Level Zero has figured out for their Vive testing:
VR may also spell the end of the mouse cursor and click for interacting with elements. A wide variety of approaches have been tested- and it's been shown to be largely device dependent. With more immersive tools like the yet to be released Oculus Touch, or the HTC Vive controllers- interaction will be much easier to solve for. In the mean time, we are faced with the challenge of working with either the keyboard/mouse or a controller (such as the X-Box One controller that will be shipped with Oculus Rift CV1 devices). Mike Alger has created a great video on interaction in VR- we'd highly recommend watching it.
One of the curious things we've discovered is that normal maps don't work too well in VR in a lot of cases. This is because the eye is very good at picking out depth information- and since VR is stereoscopic by default- we see normal maps as flat or lacking all of the depth information to signify 'this object has depth.' This means that geometry has to carry the weight of immersion much more than normal maps. It is probably a good idea to only use normal maps on objects that will be far away from the player since the parallax effect will be negligible beyond a certain distance. We're not saying don't use normal maps- but we're saying that if you try to use normal maps to convey depth on objects that are near the player, you're going to fight against immersion.
One of the amazing things about VR is the ability to get up close and personal with virtual objects. The consequence, of course, is that a great deal more work needs to go into making close objects seem realistic and detailed. The amount of fine tuned 3D modeling needed for strong VR experiences is going to be even more important than it has been in traditional gaming. Users will expect close objects to be seamless, have high poly count and textures, and be fully interactive. You may be able to cut budget on far away objects, but not close objects.
User testing will be more critical than ever before. Not only will we need to make sure our games don't make users sick, we'll need to make sure we've designed environments that make sense from a 3D spacial standpoint. Can users figure out where to go? Are there visual or spacial audio cues about what to do next or where to look? If you're not testing your VR games out on actual end users, you're very likely to release a game riddled with problems.
There's so much more to talk about, but alas, this is only a blog post. We will cover off on more of our learnings in the future. We hope this info has been valuable for VR content creators. If you liked it- please feel free to share!