2-Handed Camera Navigation: A Sketch

A 2-handed interface is described in [1] where the non-dominant hand controls the camera view while the dominant hand manipulates the scene. Here, a scheme is described where both hands control the camera view.

Most traditional camera navigation schemes fall into one of two categories: (A) free floating/flying metaphors, where the camera is suspended in space and can be moved or flown in any of 6 perpendicular directions or pitched/yawed/rolled; and (B) object-centric metaphors, where the camera orbits around a fixed center or "point of interest". Scheme A is well suited for exploring the interior of a scene or structure, whereas B is better for quickly viewing an object or scene from any outside point. Changing the "point of interest" in B can typically be done with a "look at" tool, or by panning (OpenInventor's ExaminerViewer, for example, supports both of these). However, attempting to move through a 3D architectural model with scheme B is at best cumbersome.

I propose a bimanual implementation of scheme A that can be used to quickly orbit around any region of interest, much like in scheme B.


The non-dominant hand controls panning. The dominant hand controls pitch and yaw.
Coordinated motion by both hands will orbit the camera around a region of interest. Unless hand motions are very precise, the point of interest will not stay exactly fixed. Experimentation is required to determine if this is a significant problem.
Using a secondary button, the non-dominant hand can also dolly. Similarly, the dominant hand can control roll with a secondary button.


Postscriptum: After reading this proposal, Balakrishnan directed me to [2], which proproses some alternative schemes for bimanual camera control.

Post-postscriptum: (January 2003) Another bimanual technique for camera navigation is described by Mine et al. [3] -- the technique seems to use a "witch's broom" metaphor. Furthermore, it has come to my attention that many games (for example, Sierra's Counter-Strike, and possibly Doom as well) use a bimanual camera navigation interface, where the keyboard is used for translation (e.g. keys D, A, W, S translate right, left, forward, and back respectively) and the mouse is used for rotation (e.g. for yaw and pitch). Although play is usually constrained to a horizontal plane, pitch is useful for looking up and down, and in Counter-Strike, after dying, the player can actually fly upward/downward (to look at other players) by pitching and translating simultaneously.


[1] Balakrishnan and Kurtenbach, Exploring Bimanual Camera Control and Object Manipulation in 3D Graphics Interfaces, in Proceedings of CHI '99, ACM, pages 56-63.
[2] Zeleznik, Forsberg, and Strauss, Two Pointer Input for 3D Interaction, in Symposium on Interactive 3D Graphics, 1997, ACM, pages 115-120.
[3] Mine et al., "Moving objects in space: exploiting proprioception in virtual-environment interaction", SIGGRAPH '97


Copyright ( C ) Michael McGuffin
September 11, 2000
Updated January 2003