A constrained navigation framework for individual and collaborative exploration of 3d environments

Navigation in virtual environments is the combination of the cognitive and motor processes required to control the movement and orientation of a virtual camera through a three-dimensional scene. Navigation is the most fundamental interaction technique for large-scale environments and is used to explore new environments, search known environments for regions of interest, and to maneuver into position to perform other tasks. Real-time navigation through 3D space requires the continuous specification of at least six values (three positional and three rotational) and presents a significant usability challenge, even for experienced users. Frequently, there is a poor match between the goal of the navigation activity, the affordances of the control and display devices, and the skills of the average user. To address this problem, we have developed a unified framework for incorporating context-dependent constraints into the general viewpoint motion control problem. These designer-supplied constraint modes provide a middle ground between the triviality of a single camera animation path and the confusing excess freedom of common unconstrained control paradigms. We provide a detailed taxonomy of methods for constrained navigation and demonstrate the utility of the framework through application across a broad range of environments, input devices, and output displays. Collaborative navigation activities present an even greater challenge due to the higher cognitive loads placed on the users and the inherent tension between the need for participants to explore independently and to work cooperatively. We extend our constrained navigation framework to support collaboration in virtual environments by defining taxonomies of methods that allow users to tether their viewpoint to a lead collaborator, and to smoothly reattach to a leader after periods of independent exploration. We present a formative evaluation study of these methods with users, consolidating their preferences and observations into design guidelines to aid in the application of our collaborative constrained navigation methods. Finally, we establish a solid foundation for future research in this area by defining a precise implementation language that encapsulates the entire navigation experience, and by developing an approach to formal evaluation that will allow for productive assessments of the usability benefits of our constrained navigation methods.