Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Java enterprise in a nutshell: a desktop quick reference
Java enterprise in a nutshell: a desktop quick reference
Distributed virtual worlds: foundations and implementation techniques using VRML, Java, and CORBA
Distributed virtual worlds: foundations and implementation techniques using VRML, Java, and CORBA
Java Examples in a Nutshell
Java.rmi: The Remote Method Invocation Guide
Java.rmi: The Remote Method Invocation Guide
Java RMI
Professional Jini
BT Technology Journal
A Taxonomy for Networked Virtual Environments
IEEE MultiMedia
CORBA Platform as Support for Distributed Virtual Environments
VR '99 Proceedings of the IEEE Virtual Reality
MASSIVE: a distributed virtual reality system incorporating spatial trading
ICDCS '95 Proceedings of the 15th International Conference on Distributed Computing Systems
Mindstorms: children, computers, and powerful ideas
Mindstorms: children, computers, and powerful ideas
The architecture of a distributed virtual worlds system
COOTS'98 Proceedings of the 4th conference on USENIX Conference on Object-Oriented Technologies and Systems - Volume 4
Massively Distributed Virtual Worlds a Framework Approach
FIDJI '01 Revised Papers from the International Workshop on Scientific Engineering for Distributed Java Applications
Proceedings of the 20th Workshop on Principles of Advanced and Distributed Simulation
Hi-index | 0.00 |
The MaDViWorld project represents an original attempt to define an appropriate software architecture for supporting massively distributed virtual world systems. A non-massively distributed virtual world system is typically engineered as a client-server application for which a single server or more rarely a small cluster of servers contain all the world pertinent data and assume the world accessibility, consistency and persistence. On the client side, many of them enable interaction with the other users and the various objects of the world. The main originality of our approach resides in the fact that the server part of the proposed system is no more limited to a few centralized servers, but can be distributed on arbitrarily many of them. Indeed, MaDViWorld, the prototypal software framework already implemented using Java and RMI by our group, allows for creating the rooms of a given world on several machines, each running the server application. It is then possible to connect the rooms by way of simple doors and to populate them with active objects. Finally, avatars managed by the client application visit the rooms and interact with the active objects either directly on the remote host or locally by cloning or transporting them first to the client machine. This paper draws from the experience gained with the development of our first prototype in order to discuss, both at the user's and the vi-world developer's level, the main software engineering issues related to the implementation of such massively distributed virtual world systems.