Load Balancing, Latency Management and Separation of Concerns in a Distributed Virtual World

1 Why Distributed Virtual Worlds? Although many research groups are currently designing and building virtual worlds based upon the functionality of a single hardware platform or a small number of tightly connected platforms, the need for distributing virtual worlds has been well demonstrated in domains such as ight simulators (Lee, Rissman, D'Ippolito, Plinta and Van Scoy 1988) and distributed tank combat simulations (Blau, Hughes, Moshell and Lisle 1992). As soon as developers attempt to build virtual worlds of real-world delity, the need to distribute becomes apparent (current ight simulators require dozens of CPUs working in concert|and a ight simulator is potentially a single participant in a virtual world) because these worlds must be able to scale up gracefully. The need to distribute functionality exists for two reasons, one purely technical and one psychological: 1) no single processor, even a super-computer, can provide suucient resources to computer even a tiny fraction of what we might demand from a virtual world; 2) the ability of humans to comprehend a code module decreases rapidly as the size of the module increases (Myers 1978). Furthermore, diierent hardware platforms are best suited for diierent tasks in simulating a virtual world (for reasons of speed, economy, availability of software and/or hardware, compatibility with I/O devices) and so any distributed virtual world must be prepared to support communication among a large and heterogeneous set of software and hardware devices. For these reasons, we feel that it is imperative to explore the architectural constraints placed on a virtual world by distribution (Kazman 1993b). In particular,

[1]  Glenford J. Myers,et al.  Composite/structured design , 1978 .

[2]  Tomás Feder,et al.  Optimal algorithms for approximate clustering , 1988, STOC '88.

[3]  簡聰富,et al.  物件導向軟體之架構(Object-Oriented Software Construction)探討 , 1989 .

[4]  Rodney A. Brooks,et al.  Panel Review of the Semi-Automated Forces , 1989 .

[5]  Leonard J. Bass,et al.  Serpent: a user interface management system , 1990 .

[6]  Frederick P. Brooks,et al.  Towards image realism with interactive update rates in complex virtual building environments , 1990, I3D '90.

[7]  Carlo H. Séquin,et al.  Visibility preprocessing for interactive walkthroughs , 1991, SIGGRAPH.

[8]  Chris Shaw,et al.  On temporal-spatial realism in the virtual reality environment , 1991, UIST '91.

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

[10]  Mukesh Singhal,et al.  Load distributing for locally distributed systems , 1992, Computer.

[11]  Greg Turk,et al.  Interactive simulation in a multi-person virtual world , 1992, CHI.

[12]  Carlo H. Séquin,et al.  Management of large amounts of data in interactive building walkthroughs , 1992, I3D '92.

[13]  Toby Howard,et al.  AVIARY - A Generic Virtual Reality Interface for Real Applications , 1993, Virtual Reality Systems.

[14]  Rick Kazman,et al.  Making WAVES: On the design of architectures for low-end distributed virtual environments , 1993, Proceedings of IEEE Virtual Reality Annual International Symposium.

[15]  Rick Kazman HIDRA: an architecture for highly dynamic physically based multiagent simulations , 1995 .