|
|
Locations
To improve performance so that a MU system can scale to a large number of users, systems often define locations (or "zones" or "rooms") within a larger virtual environment. The server can then restrict the amount of data it sends so that clients receive only updates for their current zones. Locations can be handled in a number of different ways. One popular way of handling zones is to split the virtual world into a grid (e.g. 50m x 50m x 50m) of zones. As the user moves around the environment, the user's zone changes automatically. This is particularly useful for worlds that are large in area. In Deep Matrix) "Gates" (similar to Anchor nodes) can be used to enable a user to transfer to a different location (VRML world). A gate in Deep Matrix is defined like this:
DEF ExampleGate Matrix_Gate { target "new_world" }
The target world is a string which needs to exist in a table of VRML worlds stored on the server. To activate a gate, a SFBool must be received from a node that generates SFBools to the gate node's "activate" eventIn. A ROUTE must therefore be defined to pass an event to a gate for it to work. The gate node (Matrix_Gate) is defined in an EXTERNPROTO which can be found in the Deep Matrix software package (in the file matrix_protos.wrl. |
|
|
Michael Louka, November 21, 2001 |