VB2: an architecture for interaction in synthetic worlds

The paper describes the VB2 architecture for the construction of three-dimensional interactive applications. The system's state and behavior are uniformly represented as a network of interrelated objects. Dynamic components are modeled by active variables, while multi-way relations are modeled by hierarchical constraints. Daemons are used to sequence between system states in reaction to changes in variable values. The constraint network is efficiently maintained by an incremental constraint solver based on an enhancement of SkyBlue. Multiple devices are used to interact with the synthetic world through the use of various interaction paradigms, including immersive environments with visual and audio feedback. Interaction techniques range from direct manipulation, to gestural input and three-dimensional virtual tools. Adaptive pattern recognition is used to increase input device expressiveness by enhancing sensor data with classification information. Virtual tools, which are encapsulations of visual appearance and behavior, present a selective view of manipulated models' information and offer an interaction metaphor to control it. Since virtual tools are first class objects, they can be assembled into more complex tools, much in the same way that simple tools are built on top of a modeling hierarchy. The architecture is currently being used to build a virtual reality animation system

[1]  Nadia Magnenat-Thalmann,et al.  An object-oriented methodology using dynamic variables for animation and scientific visualization , 1990 .

[2]  Stephen Travis Pope,et al.  A cookbook for using the model-view controller user interface paradigm in Smalltalk-80 , 1988 .

[3]  Brad A. Myers,et al.  The importance of pointer variables in constraint models , 1991, UIST '91.

[4]  Henry Fuchs,et al.  Research directions in virtual environments: report of an NSF Invitational Workshop, March 23-24, 1992, University of North Carolina at Chapel Hill , 1992, COMG.

[5]  Jock D. Mackinlay,et al.  The cognitive coprocessor architecture for interactive user interfaces , 1989, UIST '89.

[6]  S. Kicha Ganapathy,et al.  A synthetic visual environment with hand gesturing and voice input , 1989, CHI '89.

[7]  Marc Olano,et al.  3DM: a three dimensional modeler using a head-mounted display , 1992, I3D '92.

[8]  Steven D. Pieper,et al.  An integrated graphical simulation platform , 1989 .

[9]  William Buxton,et al.  A three-state model of graphical input , 1990, INTERACT.

[10]  Bertrand Meyer,et al.  Eiffel: The Language , 1991 .

[11]  Enrico Gobbetti,et al.  Building an interactive 3D animation system , 1993 .

[12]  Jonathan Baxter,et al.  Learning internal representations , 1995, COLT '95.

[13]  Jock D. Mackinlay,et al.  Cone Trees: animated 3D visualizations of hierarchical information , 1991, CHI.

[14]  E KrasnerGlenn,et al.  A cookbook for using the model-view controller user interface paradigm in Smalltalk-80 , 1988 .

[15]  Bjørn N. Freeman-Benson,et al.  Integrating Constraints with an Object-Oriented Language , 1992, ECOOP.

[16]  Dario A. Giuse KR, constraint-based knowledge representation , 1989 .

[17]  Albert Einstein Snap-together Mathematics , 1995 .

[18]  Jock D. Mackinlay,et al.  The perspective wall: detail and context smoothly integrated , 1991, CHI.

[19]  Brad A. Myers,et al.  User-interface tools: introduction and survey , 1989, IEEE Software.

[20]  William Buxton,et al.  Chunking and Phrasing and the Design of Human-Computer Dialogues (Invited Paper) , 1995, IFIP Congress.

[21]  Michael Sannella The skyblue constraint solver , 1992 .

[22]  A. Borning,et al.  Constraint technology for user-interface construction in ThingLab II , 1989, OOPSLA 1989.

[23]  Alan Borning,et al.  Constraint hierarchies , 1992 .

[24]  Daniel Thalmann,et al.  New trends in animation and visualization , 1991 .

[25]  Chris Shaw,et al.  The decoupled simulation model for virtual reality systems , 1992, CHI '92.

[26]  Bjørn N. Freeman-Benson,et al.  Kaleidoscope: mixing objects, constraints, and imperative programming , 1990, OOPSLA/ECOOP '90.

[27]  Geoffrey E. Hinton,et al.  Building adaptive interfaces with neural networks: The glove-talk pilot study , 1990, INTERACT.

[28]  William Leler,et al.  Constraint programming languages: their specification and generation , 1988 .

[29]  Paul S. Strauss,et al.  An object-oriented 3D graphics toolkit , 1992, SIGGRAPH.

[30]  Jock D. Mackinlay,et al.  The information visualizer, an information workspace , 1991, CHI.

[31]  Dean Rubine,et al.  The automatic recognition of gestures , 1992 .

[32]  Daniel G. Aliaga,et al.  An object-oriented framework for the integration of interactive animation techniques , 1991, SIGGRAPH.

[33]  F Balaguer,et al.  Virtual Environments, in: New Trends in Animation and Visualization , 1991 .

[34]  Michael Kass,et al.  CONDOR: constraint-based dataflow , 1992, SIGGRAPH.

[35]  B.N. Freeman-Benson,et al.  The DeltaBlue algorithm: an incremental constraint hierarchy solver , 1989, Eighth Annual International Phoenix Conference on Computers and Communications. 1989 Conference Proceedings.

[36]  Alan Borning,et al.  Multi-Garnet: Integrating Multi-Way Constraints with Garnet , 1992 .

[37]  Francis Balaguer,et al.  Virtual environments , 1991 .

[38]  Daniel C. Robbins,et al.  Three-dimensional widgets , 1992, I3D '92.

[39]  Geoffrey E. Hinton,et al.  Learning internal representations by error propagation , 1986 .

[40]  Kim Marriott,et al.  An Object-Oriented Architecture for Constraint-Based Graphical Editing , 1992, Workshops on Object-Oriented Graphics.

[41]  Daniel C. Robbins,et al.  Interactive shadows , 1992, UIST '92.