| |
This project explores an alternative to approach for redirected
walking. The original redirected walking gives the illusion of walking
along a path, which does not fit in the physical lab space where the virtual
environment exists. The person walks between waypoints from the start to
the destination in the virtual environment. At each waypoint the person
is occupied by a task and instructed to go to the next waypoint. The version
of redirected walking uses an avatar to guide the person. The person follows
the avatar along a path. At the waypoints, the avatar occupies the person.
Table of contents
How redirected walking works
Project Components
Lessons Learned
Implementation
Improvements
Credits
Presentation (PPT)
| How redirected walking
works [top] |
Redirected walking enables a person to have the impression
that they are exploring a large virtual environment. In the virtual world
the person may choose to walk, for example 20m in a straight line. The
longest part of the lab space might only be 5m. Although the person could
not walk 20m in the lab space, redirected walking can give the person the
illusion of walking 20m. To walk 20m in the lab, the person has to walk
four times back and forth along the 5m length of the lab. At the end of
the 5m the person has to be rotated 180 degrees in order to walk the next
5m. The person’s sense of presence, however, would be broken if they consciously
had to turn the 180 degrees. Instead to maintain the presence, the person
must rotate without being aware of it. The redirected work by Sharif demonstrates
how to rotate the person unknowingly to him/her. While the person rotates
his/her head, the virtual world is rotated. The person does not consciously
perceive the rotation, but compensates by also rotating. Hence the person
is rotated but has the impression he/she is still walking in the same direction.
So to walk the 20m, at the end of every 5m, the person has to be rotated.

This project uses an avatar, in this case a fire breathing dragon, to
guide the person. The dragon follows a relatively straight line from one
end to the other end in the virtual world. The person interacts with the
dragon and therefore is motivated to follow the dragon. The dragon moves
only for a short distance before stopping. The person has to “motivate”
the dragon to move again by touching the dragon. At the turning points
the dragon makes a circle around the person. The person is forced to rotate
in order to see and “push” the dragon to move again.

There is a fairy tale that accompanies this virtual world involving
the person and dragon. The person, the hero of the fairy tale, is on a
quest to find the oracle of “Virtual Reality”. The fire-breathing dragon
has the answer to quest. The quest leads the hero to the dragon and the
castle (modeled in this virtual environment). The dragon, however, is defending
the secret. The person can force the secret from the dragon by extinguishing
the dragon’s fire breath. The person carries a ball of water in his/her
hand, i.e., the wand. The dragon’s fire can be extinguished by repeatedly
pouring the water into the fire. The dragon however, will back off every
time doused by water. Backing off, the dragon moves from one end of the
castle hall to the other. Eventually the fire is extinguished and the secret
is revealed.
There are three major components to making a virtual environment
with redirected walking and an avatar.
-
Virtual world: The virtual world is the castle hall in which the
dragon lives. It is twice as long as the physical lab space. To walk between
two walls of the castle hall requires walking twice the length of the lab.
-
Redirected walking component: This is the mathematics of rotating
the virtual world interpretably to the person. The world is rotated about
the person’s head. The rotation however, can only occur at the same time
the person is rotating.
-
Dragon (Avatar): Implementing the dragon involves controlling the
dragon’s movement and managing the interaction. The Avatar has to follow
the predefined path though the virtual world. At the waypoints the dragon
moves around the person and redirected walking component is activated to
rotate the virtual world. The interaction between the person and dragon
involves detecting when the wand, ball of wall, is intersected with the
dragon’s fire.
Implementing this virtual environment I learned about making
effective virtual environments.
Avatars.
The dragon avatar is effective in occupying the person. The interaction
of touching the dragon is simple and easy to follow. The person is persuaded
to follow the path and turn about when the dragon moves around them. The
interaction distracts the person enough for the virtual world to be rotated
unknowingly to the person.
A general lesson to learn is that it is easy to distract the person.
In the case of this application it is an advantage. However, other applications
might be disadvantaged. For example, the avatar diverts the attention from
other objects in the room.
Visual environments
When designing the virtual environment it is important to provide reference
points, which give the person a sense of orientation. The sense of orientation
can be lost when being distracted by the dragon. A glimpse of the reference
points quickly reestablishes the orientation. The following Figure illustrates
the reference points used in the castle virtual environment.

The HMD determines the available window to view the world. The size
and proportions of the virtual objects has to be designed to fit the limited
field of view. The dragon is usually very close to the person. If it is
too big, it will block out any view of the virtual world. Blocking the
virtual world makes it difficult to see the reference points needed for
a sense of orientation.
Audio
Although audio is not implemented, the immerssive attributes of audio
are obvious. Only a visual perception of the dragon is not enough to convey
the ferociousness of the fire-breathing dragon. The dragon would be more
pervasive if one could here the fire, roaring, and stomping. The following
picture speaks for itself; one can imagine the corresponding sounds.
http://www.ngame.com/downloads/dragon-1600x1200.jpg
The implementation of the redirected walking is a review of linear
algebra and OpenGL. In particular involving transforming between model
and world coordinates.
Rotating the virtual world involves rotating about the person’s current
position. It is as simple as learned in graphics 101 (comp 136).

The model-view matrix, M, converts from model to world coordinates.
Converting world to model coordinates involves taking the inverse of the
M, which is possible, for example, with Gaussian elimination. A similar
computation is to maintain the inverse as follows (basic linear algebra).

The implementation of the dragon and interaction is modeled in a finite
state machine, shown in the following Figure. The state machine makes it
easy to have an overview of the interaction.
Each state represents a different form of motion. Care has to be taken
to have smooth motion when transitioning between states. Any jerkiness
in motion breaks the sense of presence.

After the demonstration there were helpful suggestions to improve
the demo:
-
The “ball of a water” could be replaced by squirt gun. The squirt gun is
controlled with the wand. The button of the wand can be used to squirt
the water. Squirting the water reduces the stretching the person has to
do to intersect the water and fire.
-
Currently the dragon’s circular motion makes the HMD and tracker wires
wrap around the person. Changing the dragon’s motion can prevent the wrapping
of wires. Instead of turning full circles, the dragon can make half circles,
each half changing the direction.
-
Depending on how the person follows the dragon, the person might be deviate
from the intended path and collide with real world obstructions. The dragon’s
motion can be enhanced to counter the deviations. Seeing people go through
the demo, I have need ideas to improve this.
-
The person should have feedback that the fire is being extinguished. The
dragon’s fire should reduce as more water is squirted. When the fire goes
out, the secret is revealed.
All images and pictures that look cool are not from me. Great
people on the internet have created them.
|