MaDViWorld: a software framework for massively distributed virtual worlds

  • Authors:
  • Patrik Fuhrer;Ghita Kouadri Mostéfaoui;Jacques Pasquier-Rocha

  • Affiliations:
  • Department of Informatics, University of Fribourg, Switzerland, Site Regina Mundi, Rue P.A. de Faucigny 2, CH-1700 Fribourg, Switzerland;Department of Informatics, University of Fribourg, Switzerland, Site Regina Mundi, Rue P.A. de Faucigny 2, CH-1700 Fribourg, Switzerland;Department of Informatics, University of Fribourg, Switzerland, Site Regina Mundi, Rue P.A. de Faucigny 2, CH-1700 Fribourg, Switzerland

  • Venue:
  • Software—Practice & Experience
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

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.