Skip to content
Eike Langbehn edited this page Mar 30, 2017 · 12 revisions

This is a small tool that helps you to create virtual path layouts for curve-based redirected walking in virtual reality inside the unity3d editor. It is created by Eike Langbehn from the human-computer interaction group of Hamburg University and published under the MIT license.

Introduction

Redirected walking promises to allow near-natural walking in an infinitely large virtual environment by subtle manipulations of the virtual camera. With this tool, you are able to create a path layout for building a virtual environment that is much larger than the available physical tracking space.

This video might give you a first impression of this idea:

IMAGE ALT TEXT HERE

If you are interested in more details, you can checkout our research paper:

Bending the Curve: Sensitivity to Bending of Curved Paths and Application in Room-Scale VR Eike Langbehn, Paul Lubos, Gerd Bruder, Frank Steinicke. IEEE Transactions on Visualization and Computer Graphics (TVCG), Special Issue on IEEE Virtual Reality (VR), page (accepted) - 2017

Requirements

To use this tool you need the following things:

  • A HTC Vive
  • A tracking space of at least 3m x 3m size
  • The Unity3D game engine (is available for free)

Terms

There are a few terms you should understand while using the tool. This picture shows jointpoints and curves:

Camera in hierarchy

And this one shows additionally intersections and paths:

Camera in hierarchy

Jointpoint

  • A jointpoint is the (real world) crossing of several curves.
  • There are only three jointpoints in total.

Curve

  • A curve is the (real world) connection between two jointpoints.
  • There are only six curves in total.

Intersection

  • An intersection is the (virtual world) crossing of several paths.
  • Each intersection has one jointpoint as a real world counterpart.

Path

  • A path is the (virtual world) connection between two intersections.
  • Each path has one curve as a real world counterpart.

Setup

To setup the tool correctly follow these steps:

  • Download or clone the repository from github
  • Open the project inside Unity3D
  • Go to the asset store (Window -> Asset Store), download the SteamVR package and import it to the project
  • Open the Example scene
  • Add the CameraRig prefab of the SteamVR package to the scene under the PositionOffset GameObject and remove the Camera GameObject that was there before
  • Now, it should look like this:

Camera in hierarchy

That's it.

Usage

To create a virtual path layout follow these steps:

  • Open the Path Generator Window (Window -> Path Generator)
  • This will automatically create a data asset in Assets/Resources/data.asset to which the virtual path layout will be stored
  • The path Generator Window itself should look like this:

Camera in hierarchy

  • Mark the checkbox "Generate jointpoints automatically according to tracking space"
  • Set the side length to the side length of your tracking space, e.g. 4m
  • Click "Create curves"
  • Now the scene view should look like this:

Camera in hierarchy

  • Then, you can choose a start joint, e.g. "A"
  • Finally, you can create virtual paths by choosing a start intersection, a corresponding curve, and a gain
  • After creating a few paths, your scene view might look like this:

Camera in hierarchy

  • Then, you can create the virtual environment around this path layout: trails, hallways, forests, houses, etc
  • When you are done with that, it's time to try!
  • Hit play
  • Position yourself at the start joint (in the real world)
  • Put on the Head-Mounted Display
  • Hit 'space' or 'trigger' when you're ready
  • Start walking around!
Clone this wiki locally