Region crossing
Introduction
The Second Life world is divided into square regions 256 meters on a side. Each region is managed by a separate simulator program. Viewers present the illusion of a large, seamless world by communicating with several region simulators simultaneously. Avatars cross between regions via a complex process which requires cooperation between multiple simulators and viewers.
Event sequence diagram for region crossings
Source code for the sequence diagram above.
|
---|
To change the diagram, change this source code, then paste it into this free online chart generator [1] to generate a new .png image. Then replace the version of the image above with a new image. title Region crossing - COMING SOON participant "Viewer" as V participant "Host Region" as H participant "Neighbour Region" as N V->H: EventQueueGet activate H rbox left of V: Stood in the region centre\nDraw Distanceis 32m\nno otherregions are visibleV-->H: AgentUpdate(x=128,y=128,Far=32) V-->>H: AgentUpdate V-->>H: AgentUpdate V-->>H: AgentUpdate rbox left of V: Draw Distance is increased to 200m V-->>H: AgentUpdate(Far=200) H->N: ServerSide ChitChat N->H: group EventQueueGet<response> H->V: EventQueueGet([EnableSimulator]) deactivate H H->>V: EnableSimulator end V->H: EventQueueGet activate H V-->N:UseCircuitCode V-->>H: AgentUpdate V-->>H: AgentUpdate N-->V: RegionHandshake V-->N: RegionHandshakeReply V-->>H: AgentUpdate group EventQueueGet<response> H->V: EventQueueGet([EstablishAgentCommunication]) deactivate H H->>V: EstablishAgentCommunication end V->N: Seed N->V: Seed<Response>V |
Discussion
This is an event sequence diagram of the essential events that take place as an avatar crosses from one region to another.
Notes
Dashed lines are UDP messages. Solid lines are events received via EventQueueGet.
This documents the successful "happy path". Error conditions are not yet covered.
This information reflects what has been discovered by third part viewer developers. It is not official and may contain errors.