Matthew Conway

Ph.D

Dr. Matt Conway is a pioneer in the development of easy to use tools for building virtual environments. His PhD work at the University of Virginia was on Alice: Interactive 3D Graphics Programming for Novices. This resulted in the production of the Alice toolkit, a powerful scripting language for the programming of interactive 3D virtual environments. Alice is freely available from http://www.alice.org/ and is used as a teaching and development tool in many universities. In addition to developing Alice, Matt was involved with developing a number of interface metaphors for immersive virtual environments, including the "Worlds in Miniature" technique, 3D Magic Lenses, and Image Plane Interaction techniques. After completing his PhD, Matt joined the User Interface Research Group at Microsoft Research where his work on 3D user interfaces contributed to six patent applications. Most recently he was the program manager of ClearType Technologies in the eBook Group of Microsoft, developing the ClearType technology which is now shipped with the Windows XP and CE operating systems.

Randy Pausch is an inspiration to all with his research, teaching, the way he has lived his life, and his courage while confronting pancreatic cancer. This session brings together people he has touched through various phases of his career to discuss his research and legacy.

We present lessons learned from developing Alice, a 3D graphics programming environment designed for undergraduates with no 3D graphics or programming experience. Alice is a Windows 95/NT tool for describing the time-based and interactive behavior of 3D objects, not a CAD tool for creating object geometry. Our observations and conclusions come from formal and informal observations of hundreds of users. Primary results include the use of LOGO-style egocentric coordinate systems, the use of arbitrary objects as lightweight coordinate systems, the launching of implicit threads of execution, extensive function overloading for a small set of commands, the careful choice of command names, and the ubiquitous use of animation and undo.

The VideoMouse is a mouse that uses a camera as its input sensor. A real-time vision algorithm determines the six degree-of-freedom mouse posture, consisting of 2D motion, tilt in the forward/back and left/right axes, rotation of the mouse about its vertical axis, and some limited height sensing. Thus, a familiar 2D device can be extended for three-dimensional manipulation, while remaining suitable for standard 2D GUI tasks. We describe techniques for mouse functionality, 3D manipulation, navigating large 2D spaces, and using the camera for lightweight scanning tasks.

Alice is a rapid prototyping system used to create three dimensional graphics simulations like those seen in virtual reality applications. Alice uses an interpreted language called Python as its scripting language to implement user actions. This interactive development environment allows users to explore many more design options than is possible in a compiled language environment. The alpha version of Alice for Windows 95 is available for free over the internet, with the beta release scheduled for August.

This work extends the metaphor of a see-through interface embodied in Magic Lenses to 3D environments. We present two new see-through visualization techniques: flat lenses in 3D and volumetric lenses. We discuss implementation concerns for platforms that have programmer accessible hardware clipping planes and show several examples of each visualization technique. We also examine composition of multiple lenses in 3D environments, which strengthens the flat lens metaphor, but may have no meaningful semantics in the case of volumetric lenses.

This paper explores a user interface technique which augments an immersive head tracked display with a hand-held miniature copy of the virtual environment. We call this interface technique the Worlds in Miniature (WIM) metaphor. In addition to the first-person perspective offered by a virtual reality system, a World in Miniature offers a second dynamic viewport onto the virtual environment. Objects may be directly manipulated either through the immersive viewport or through the three-dimensional viewport offered by the WIM. In addition to describing object manipulation, this paper explores ways in which Worlds in Miniature can act as a single unifying metaphor for such application independent interaction techniques as object selection, navigation, path planning, and visualization. The WIM metaphor offers multiple points of view and multiple scales at which the user can operate, without requiring explicit modes or commands. Informal user observation indicates that users adapt to the Worlds in Miniature metaphor quickly and that physical props are helpful in manipulating the WIM and other objects in the environment.

The Tailor project allows physically disabled users to provide real-time analog input to computer applications. We use a Polhemus tracking device and create a custom tailored mapping from each user's best range and type of motion into the analog control signal. The application is a simple video game based on Pong, where the analog input controls the position of the player's paddle. A group of able-bodied subjects was able to correctly hit the ball with the paddle 77% of the time, and a comparison group of children with Cerebral Palsy performed at the 50% level. More than half the disabled users were able to perform at a higher level than the worst able-bodied user.

In recent years, the computer science community has realized the advantages of GUIs (Graphical User Interfaces). Because high-quality GUIs are difficult to build, support tools such as UIMSs, UI Toolkits, and Interface Builders have been developed. Although these tools are powerful, they typically make two assumptions: first, that the programmer has some familiarity with the GUI model, and second, that he is willing to invest several weeks becoming proficient with the tool. These tools typically operate only on specific platforms, such as DOS, the Macintosh, or UNIX/X-windows. The existing tools are beyond the reach of most undergraduate computer science majors, or professional programmers who wish to quickly build GUIs without investing the time to become specialists in GUI design. For this class of users, we developed SUIT, the Simple User Interface Toolkit. SUIT is an attempt to distill the fundamental components of an interface builder and GUI toolkit, and to explain those concepts with the tool itself, all in a short period of time. We have measured that college juniors with no previous GUI programming experience can use SUIT productively after less than three hours. SUIT is a C subroutine library which provides an external control UIMS, an interactive layout editor, and a set of standard "widgets," such as sliders, buttons, and check boxes. SUIT-based applications run transparently across the Macintosh, DOS, and UNIX/X platforms. SUIT has been exported to hundreds of external sites on the internet. This paper describes SUIT's architecture, the design decisions we made during its development, and the lessons we learned from extensive observations of over 120 users.