The Gamasutra Deep Dives are an ongoing series with the goal of shedding light on specific design, art, or technical features within a video game, in order to show how seemingly simple, fundamental design decisions aren't really that simple at all.
Check out earlier installments, including creating dynamic audio for the destructible levels of Rainbow Six Siege, achieving seamless branching in Watch Dogs 2’s Invasion of Privacy missions, and creating the intricate level design of Dishonored 2's Clockwork Mansion.
My name’s Brian Murphy and I’m the creative director and co-founder of Drifter Entertainment (founded July 2016).
I got my start in games working at Xbox (first on several small XBLA games, then helped launch Kinect and lastly spent a few years playing with holograms and helping to build the HoloLens.)
About 10 years into my tour with Microsoft an opportunity to help form Drifter Entertainment popped up that sounded like too much fun to pass up. Since then our scrappy little studio has been working on our first game, an awesome co-op shooter called Gunheart, which just came out of early access on June 4th.
What: VR locomotion
There are few things in the world of VR discussed more than locomotion. Among VR enthusiasts locomotion conversations seem to inspire the same kind of wide eyed, white-knuckled urgency usually reserved for politics, religion and “The Last Jedi.”
But hey, this makes sense to me! For many of us our first encounter with virtual reality is a powerful and arresting experience. Suddenly everything seems possible, you’ll be transported to impossible places and experience things you only dreamed of! You look around and say “cool now I want to go over there!” and as your avatar begins to move in that direction you and about half of all other users suddenly go weak in the knees.
As a VR developer this isn’t something we can ignore and so every game must decide how they are going to deal with it. Is your game going remain firmly at room scale? Never allow the player to move further than the boundaries of your space? Will you implement some kind of teleport system? Or are you throwing caution to the wind and potentially cutting your audience in half at the outset by implementing a smooth motion scheme?
After a year in early access we’ve tried pretty much everything and here’s what we learned:
Where we started: “Teleport as a superpower”
For the first version of Gunheart we tried to take the teleport mechanic that many VR games feature and make it into a superpower rather than a compromise. That meant ditching things like cooldown bars and short hops, and instead giving players essentially immediate access to the entire battlefield. We added tons of verticality to the maps and a whole system that made your teleport snap to ledges, corners and into cover. We built AI that are specifically designed to be able to stand up against such a formidable ability.
For easy ready: All the little black target icons in this picture are teleportation snap points. We wrote a special algorithm that runs as part of our build process that predicts all the places a player might want to teleport to and flags those places. Then at runtime we are able to use that data extremely efficiently to predict the player's intent when they point and click.
The design philosophy behind the teleport mechanic borrows heavily from the cover system our co-founder, Ray Davis, built for Gears of War. You can just point and tap the teleport button in Gunheart and the system is smart enough to guess your intent and drop you there.
This first version of teleport is a super fun way to play Gunheart and best of all everyone can play in this mode without getting sick. We held our breath and hit the publish button.
Cruising toward smooth motion
Requests for a smooth motion option began to flow back in pretty much immediately.
Many players felt that teleportation pulled them out the immersion that VR affords. It’s a valid point, especially if you are not accustomed to teleportation there is a mental tax you pay every time you teleport and are forced to reorient your self and re-acquire your targets. I think the more time you spend with a teleport mechanic the less you feel that effect, but it still felt like an important thing to address if we could.
So for the first patch we released we added a menu that allowed players to enable a smooth motion scheme and tweak a bunch of options. Over the months we continued to add more options and track usage. After watching how player used the system we learned a few key lessons:
When it comes to comfort there are roughly three groups of VR players:
- Maximum Comfort: These players will probably never feel comfortable with any kind of movement scheme, so if you want to make a game where the player can freely move around your going to need teleportation, and probably some kind of snap rotation.
- Aided Motion: Over time some players will want to dip their toes into the full motion experience but switching everything on at once can be a bit too much for them. With the aided motion configuration smooth motion is on, but rotation is still set to snap turns. Teleport remains instantaneous rather than a high-speed dash, and extra comfort aids like tunnel vision blinders are switched on whenever the player moves. For many players this is a transition state. Often the more they play in this mode, the more they eventually activate other features.
- Full Motion Immersion: These players are all in for whatever you can throw at them. Full smooth motion control, smooth rotation, and high-speed dashing replaces the teleport. The key for this group is to never bring them out of the action.
A few other key things we learned:
- When moving use constant velocity: Easing in and out of smooth motion makes many people queasy, for most players it’s more comfortable to make fixed velocity switches instead. We found that using joystick scale to toggle across 3 speeds “standing still”, “walk” and “run” made the motion less jarring while still remaining comfortable.
- Tunnel Vision blinders can help with motion sickness: Placing “tunnel vision” blinders at the edge of the screen that fade in and fade out when the player moves can help some players get used to smooth motion. We tried a bunch of visual treatments for this and just a simple black vignette ended up being the least intrusive.
- Make the teleport effect feel like an eye blink: We tried several different visual treatments for the teleportation effect. The one that ends up being the most comfortable is a simulated eye blink and since we naturally blink 15-20 time per minute it also feels natural. With a little research we found that your eyelids snap shut slightly faster than they open back up so to simulate that we fade to black over 75 milliseconds and then fade back in over 150 milliseconds.
- Seated Play Support: Initially we thought seated play would only be a feature that room scale players would be interested in, but what we found was that if you are building a game designed for hours and hours of play, most people will want to take a seat!
- Snap turns: if you are going to support seated play you’ll need to support rotation scheme. We ended up with A LOT of different configurations for this one: smooth rotate, snap rotate on teleport, snap rotate in place, analog snapping, interval snapping at 45, 90, or 180-degree intervals. For comfort defaults on vive we ended up setting the defaults to a 180 spin turn, and for Oculus and Windows MR we used the snap turn on teleport as the default.
- Personal Space bubble: We weren’t the first team to discover that with VR being such a personal experience we need to keep players at arm’s reach. Even well meaning players who are trying to shoulder through a tight corridor might get too close for comfort. So we imposed an invisible 150 cm barrier that keeps players at a polite distance with each other.
Leaping to PC
Since Gunheart is a co-op game we always wanted to bring it to as many platforms as possible, the more people playing together the more fun there is to be had! We started by supporting every VR platform we could get our hands on, but with the advent of smooth motion the possibility for a more traditional screen-based version of the game also felt like it could be awesome.
So we dived into the screen based version and as it took shape it became much easier to see which systems were not measuring up when compared to traditional games in the genre. With VR it’s easy to get hypnotized by its immersive beauty, but once we made the jump to non-VR we could more easily see all the stuff we were missing.
Things like sliding off a ledges, smoothly cruising through tight spaces, or equipping a different loadout quickly suddenly snapped into focus as things we needed to improve. Probably the biggest feature addition that materialized because of the screen based version was the Jump mechanic.
Jump was a feature players had been asking for since day one and we had long debated weather it was necessary. Teleport seemed to serve the same purpose as jump so it felt redundant. But once we implemented it we discovered how wrong we were.
We took the same approach to jump that we took with teleport: how do we make this feel like a crazy super power? The answer: 20 foot leaps and double jump for mid flight course corrections.
Suddenly teleport and jump were complementing each other really interesting ways. Get up high in the air to get a lay of the land and then use teleport to snap into place like you have a high powered grappling hook. In PC mode the play between the two mechanics completely changed how you approached a fight and once we switched it on in VR the vertigo inducing 30 foot leaps feel amazing!
Looking back a few key lessons pop out to me on the journey.
First, VR is a deeply personal medium. There is simply never going to be a one size fits all solution for the kind of world spanning videos games that we make at Drifter. The best we can do is build some solid defaults and give the players tons of controls for tuning the controls just the way they like them. For our next outing I’ll probably embrace that fact and build the comfort mode and the smooth motion mode together from the beginning. That way we are not missing opportunities for greatness like jump + teleport by being overly cautious at the outset.
Second, it can be really valuable to look at your game in a non-VR context. VR is magical and different but that doesn’t mean we need to re-learn 50 years of video game history. Especially when it comes to systems like UI, character progression, and gameplay. Take a long, hard look at your game and ask yourself, “would this still be awesome if it wasn’t VR?” If we don’t do that, VR will never push past being anything more than a novelty.
Lastly, listen to your players. They want the same thing developers want: awesome games. We might not always agree, but the feedback from the community is by far the most valuable thing we got out of going early access.