Research on Interaction Techniques in Virtual Reality
Selection and Manipulation
Mohamed Suhail, Shyam Prathish Sargunam, Dustin T. Han, Eric D. Ragan
In many virtual reality applications, it would be ideal if users could use their physical hands to directly interact with virtual objects while experiencing realistic haptic feedback. While this can be achieved via interaction with tracked physical props that correspond to virtual objects, practical limitations can make it difficult to achieve a physical environment that exactly represents the virtual world, and virtual environments are often much larger than the available tracked physical space. Our research investigates methods that allow physical hand interaction with passive props while the user remains at a physical location, as would be the case for home-use scenarios where a user is seated at a desk or standing in front of a table. Our approach maps a single physical prop to multiple virtual objects distributed throughout a virtual environment. Leveraging prior work, we explore two adjusted travel techniques to facilitate physically aligning the user with the physical prop when ready to virtually interact with a virtual object: a redirection approach that uses rotational adjustments to gradually align the user during virtual locomotion, and the resetting approach that introduces a discrete rotational update when the user virtually approaches a target for interaction. Additionally, our work explores considerations for using one physical prop to control multiple types of object interactions. We report the results of a controlled study about usability of the two passive-haptic interaction methods as compared to a virtual hand approach without haptics.
Travel and Navigation
Semi-natural travel and viewing techniques
Since 2015, I have been working on three research projects focusing on travel and navigation in VR. One of these projects involved the design and development of a new technique, guided head rotation. The following write-up gives a small overview of the motivation for the technique and the technique's working.
When virtual reality (VR) is used extensively for home entertainment and office use, users might not be interested in physically standing for a prolonged duration. Because, we are used to being seated while using a computer or while playing a game. When users like to be seated during a VR experience, a swivel chair that spins around the vertical axis is commonly used as a semi-natural method to explore a virtual environment with 360-degree view. However, there are few cases where swivel chair might not be preferred. For example:
when a user wants to have a relaxed VR experience on a couch
when a user is constrained by the physical setup like the placement of a keyboard/computer that needs to be used during the experience
when a user is in commute.
These scenarios can be understood from the images below:
Scenarios where a swivel chair might not be preferred
So, how to enable interactions with 360-degree view in the above mentioned cases? A usual approach is to amplify users’ head rotations. Head rotation amplification involves modification of tracked rotations before applying rotational changes to the virtual camera. Usually, the rotational differences are increased before being applied to the virtual camera, to enable larger virtual turns with smaller physical turns. The factor by which virtual rotation differs from real world rotation is referred to as the amplification factor and the head rotation amplification is usually implemented with a constant amplification factor. The constant amplification factor could cause simulator sickness and is often noticeable when 360-degree view is attempted with a non-swivel chair. So, we tried a different approach where the amplification factor is calculated dynamically, based on real-world head orientation applied to a cosine function. With this approach, the amplification factor varies around 1 and the amplification is barely noticeable within -45 degree to + 45 degree range whereas it reaches a maximum value of 2 when real world head offset is close to -90 degree or +90 degree thus enabling a 360-degree virtual view within a 180-degree physical range. The amplification factor is calculated using the following formula:
Amplification factor, a = 2-cos(h)
(h = difference between the tracked HMD rotation and the neutral forward direction around vertical axis (difference in yaw))
A top-down view showing how amplification factor is varied based on real-world head rotations
So, with the head rotation amplification discussed above, users will be able to look at things located at 180-degree offset in virtual environment by just turning 90 degrees in the real world. This causes a new problem. Users might not feel comfortable to remain seated in a non-swivel chair with this extreme neck orientation as shown in the image. Also, once they have turned 90 degrees in real world, they cannot continue to rotate further in the same direction. So, there is a need to redirect users to their physical forward direction for comfort and to enable further rotations in either direction.
Guided head rotation addresses this by using perceptual illusion to redirect users during the virtual travel. As a user moves forward towards a virtual target, the virtual world is gradually rotated by marginal values towards the user's physical forward direction. The user’s intention would be to keep the virtual target in line with the virtual gaze and in trying to do so, the user would gradually turn towards the physical forward direction, thereby getting realigned with the physical forward direction eventually. The redirection, along with amplified head rotation is demonstrated using the following top-down view.
A top-down view demonstrating realignment during virtual travel. As a user moves virtually towards the target (the blue cube), the rotational adjustments applied encourage the user to gradually realign towards forward direction in the real world.
A top-down view demonstrating realignment during virtual travel. The black content represents the physical world and user, and the blue content represents the virtual world and user. The orange arrow shows the virtual path of travel. The images show three stages of travel progressing from left to right (in order: a, b, and c). By gradually rotating the virtual world as the user travels along the virtual path (orange arrow), the user is encouraged to rotate with the virtual rotation and ultimately faces the real-world forward direction (horizontal black line).
Guided head rotation in use. A user being realigned during virtual travel.
We studied guided head rotation and head rotation amplification in comparison with standard 360-degree rotation (using a swivel chair) by testing the spatial awareness of participants. The study and our findings are published in IEEE VR 2017 as a conference paper.