Teleportation vs Walking: Locomotion Methods in VR
It might be no surprise that I really love working with VR. AR is cool, but there's something about creating an entirely different world which I just love. Some of my love for VR probably comes from my love of software and general mehness towards hardware. Hardware is necessary, but I often find when I work closely with it that it gets in the way a lot. I can't change that the sensors on your phone aren't super accurate so the AR elements jitter and jump around, but I can change that the sky is purple instead of blue in VR.
In my last Mixed Realities class Mark Billinghurst talked about interfaces in VR and AR. He has talk previously (if briefly) about locomotion in VR, and I'm going to focus on exploring that deeper. As I find the various modes people have used and what modes people prefer super interesting (My choice is a form of teleportation).
There are some major forms of locomotion that I was able to find (Without dedicated hardware such as a omni-directional treadmill). Two sections are from the Freedom Locomotion VR title which has a few interesting options.
- Fixed locomotion
- No locomotion
- On-Rails locomotion
- Directional locomotion
- Teleportation
- Anchor teleportation
- Free teleportation
- Dash teleportation
- On the Spot locomotion
- Step locomotion
- Blink Step
- Dash Step
- Drag locomotion
- Real locomotion
Fixed and Directional locomotion
Fixed locomotion is the simplest. Either you have no locomotion other than looking around, such as a game in which you stay in one place sitting at a desk/control panel, or you are "on rails". On rails games are those in which you move, but you don't have any control over that movement. Most games with an on rails system have you moving in one direction consistently, as changing direction or accelerating can make the VR induced motion sickness worse3.
Directional locomotion also often runs into the issue of VR induced motion sickness, as they are a conventional form of movement in games, but don't have any relation to our real bodies. You either control it via a touch-pad/joystick, or the direction you are facing, either way it creates a smooth movement in a direction in response to an input.
Teleportation
Steam VR Home, environments use a mix of free and anchor teleportation.
Teleportation is a method in which you use some kind of pointer to point at a target location and teleport there inside the game, allowing you to "move" your physical space.
If this target location is set by the games creators (usually by creating set places you can teleport to) I would classify it as Anchor teleportation, as that's what the Unity XR plugin calls it, and it's a descriptive name.
If this target location can be anywhere then it is Free teleportation. This is usually done by simply setting your current location to the pointers location, some games fade to black quickly between locations to avoid some level of VR induced motion sickness.
Dash teleportation can be either type, but I classify it differently as it causes you to move along the path to the destination via smooth movement. I have found this (counter intuitively) to actually be more disorienting than simple teleportation.
On the Spot locomotion
On the Spot locomotion is any sort of locomotion system (regardless of its implementation) where you walk/jog/run on the spot and that moves you though the game world. You may control the direction of movement with where you are looking, via a touchpad, or some other method. This method is hailed by quite a few people as the future of VR locomotion, although I have other feelings on the matter.
After spending a while trying to get used to it, I did... mostly. I was able to move where I wanted to go, but every time I did it took me out of my immersion completely. One factor was that I wear glasses, so my VR headset is a little farther away from my face by necessity, so the jogging on the spot that it wanted me to do causes the headset to jiggle uncomfortably.
Another was that whenever I moved the edges of my vision would fade to black, which, while meant to help with VR induced motion sickness2, had me noticing that I was jogging on the spot, and pulled me out of the game a large amount.
Step locomotion
Step locomotion is a weird one. It works off small distances, "steps", and simply blinks (a term for a short ranged teleport) or dashes (moves you quickly) you to that distance.
This has the instant disadvantage from teleportation based methods that you have to click/hold down many more times/longer in order to get the same distance with about the same level of immersion breaking.
Drag locomotion
Drag locomotion moves the world not your character. You grab onto a piece of the world and pull it past you, moving yourself through the world.
Some implementations even allow you to grab empty air.
This gets rid of a lot of the issues with VR induced motion sickness (If you can convince yourself that you are not moving, but the world is) although comes at the cost of making a very physical action, which may limit the rest of the game's inputs.
Real locomotion
Real locomotion comes in two forms. One where the space you can move in is mapped to your real world space (Such as Vive's room scale or various companies warehouse scale), and another which uses clever tricks to make you think you're moving around in a larger space than you actually are.
These tricks work better in larger spaces, but simply making doorways into other rooms "portals" changing the layout to constantly use the same space and "double back" on itself is a decent enough way to do this.
This method is the most difficult to implement if you want the user to be able to move across distances, but also gets rid of most, if not all of the issues that cause VR induced motion sickness (As your real motion is mapped 1-1 to your virtual motion).
A conclusion
Looking at all of these methods I personally like regular teleportation the best. I can see that on the spot locomotion could be very immersive for certain people, and that dash methods could prevent people from getting disoriented by showing them move from location to location rather than having a jump.
Real locomotion, while the best choice if you have the ability, is often too limited. As most people have limited space to use VR in. I would like to experiment with a teleportation/dash system more, but while immersed in a game I find that I want to try and do things during the dash, and disorientated by the speed that is often used with it. This may just be me being used to virtual environments from years of working and playing on regular screens, so I have some level of resistance to disorientation from intentional sudden changes in location that a causal user would.
Or I could just be weird, that's always a possibility.
For now I think I will build my VR applications with the goal of real movement as much as possible, the use of teleportation if I need it, and the addition of a dash version as an optional setting if I am using teleportation.
REFERENCES:
- Fenlon, W. (2013, April 3). The Promise and Challenges of Head-Mounted Virtual Reality Displays—Tested.com. Tested. https://www.tested.com/tech/gaming/454559-valves-michael-abrash-promise-and-challenges-vr/
- How to Avoid VR Motion Sickness—The Complete Guide to What Realy Works—ARVI VR. (2018, March 22). https://vr.arvilab.com/blog/combating-vr-sickness-debunking-myths-and-learning-what-really-works
- Statt, N. (2016, October 13). How game designers find ways around VR motion sickness. The Verge. https://www.theverge.com/2016/10/13/13261342/virtual-reality-oculus-rift-touch-lone-echo-robo-recall