A pattern language for virtual environments

Designing virtual environments is not an easy task because of the number of activities to coordinate. Describing the virtual space, designing the inhabiting objects, and defining the behaviour of rooms, objects and users according to their surrounding context are some of them. Focusing on MOO environments, this paper describes a simple object-oriented model to design the conceptual aspects of a virtual environment. It then presents a set of design patterns to help VE designers solve recurrent design problems. These patterns provide solutions to the design of virtual space, mobility and behavioural issues. They are named Area, Gate, Locomotion, Transport and Collector. This pattern catalogue represents a first step towards a pattern language for the design of virtual environments.

[1]  Paul Dourish,et al.  Re-place-ing space: the roles of place and space in collaborative systems , 1996, CSCW '96.

[2]  Kent L. Beck,et al.  Smalltalk best practice patterns , 1996 .

[3]  Arthur J. Riel,et al.  Object-Oriented Design Heuristics , 1996 .

[4]  Luis A. Guerrero,et al.  Design patterns for collaborative systems , 1999, 6th International Symposium on String Processing and Information Retrieval. 5th International Workshop on Groupware (Cat. No.PR00268).

[5]  Steve DiPaola,et al.  Avatars: Exploring and Building Virtual Worlds on the Internet , 1997 .

[6]  James O. Coplien,et al.  A generative development-process pattern language , 1995 .

[7]  Paul Dourish,et al.  Running Out of Space: Models of Information Navigation , 1999 .

[8]  Jan Rune Holmevik,et al.  High Wired: On the Design, Use, and Theory of Educational Moos , 2001 .

[9]  Douglas C. Schmidt,et al.  Using design patterns to develop reusable object-oriented communication software , 1995, CACM.

[10]  Steve Benford,et al.  Crowded collaborative virtual environments , 1997, CHI.

[11]  Rebecca Wirfs-Brock,et al.  Designing object-oriented software , 1990 .

[12]  Max Jacobson,et al.  A Pattern Language: Towns, Buildings, Construction , 1981 .

[13]  Gerard G. Meszaros,et al.  A pattern language for pattern writing , 1997 .

[14]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[15]  James O. Coplien,et al.  Pattern languages of program design , 1995 .

[16]  Chris Greenhalgh,et al.  Large scale collaborative virtual environments , 1999, CPHC/BCS distinguished dissertations.

[17]  Steve Benford,et al.  User embodiment in collaborative virtual environments , 1995, CHI '95.

[18]  Tom Rodden,et al.  Populating the application: a model of awareness for cooperative applications , 1996, CSCW '96.

[19]  Dirk Riehle,et al.  Pattern Languages of Program Design 3 , 1997 .

[20]  Johanna D. Moore,et al.  Proceedings of the Conference on Human Factors in Computing Systems , 1989 .