Interaction

Nathan J. Strange ([email protected])
Fri, 5 May 95 8:13:11 EST


>
> - When the visitor moves, picks up an object, or performs any other
> action, his/her viewer sends the change to the server and updates the
> change locally.
>
> - When the server receives a change it updates its dynamic objects and
> propagates the change to its list of visitors (but not the originator of
> the change since it's already been updated there).
>
> - When a viewer receives a remote change (through some sort of server push
> operation) it updates its scene.
>
> - When a visitor leaves, the server removes his/her name from the list of
> current visitors and removes the Avatar from its object store.
>

How about this implementation:

-When a user makes a change it gets sent to the server

-The Server updates its virtual World

-At a set time period, set by a <poll 1 minute> tag or whatever
each client query's they server for an update, which would be
smaller than the orginal world information. The client then
uses the update from the server to update its virtual world

-If a user's client doesn't query back, it is assumed that the user
disconnected

In this way, net traffic is reduced and the following things are
accomplished

-When the net gets faster worlds can be easily updated to the new speed

-Worlds can have dynamic features like waterfalls, or animals

-If you don't like the load on your server, you can reduce it by making
your world slower

-Nathan