Region crossings
From OpenSimulator
This section is incomplete
- Every OpenSimulator frame (approximately every 89ms), every avatar is checked to see whether it has crossed into a neighbouring region (currently in ScenePresence.CheckForBorderCrossing().
- This check is done by extrapolating the avatar's position in the next 100ms at its current heading and velocity
- If the extrapolation shows the avatar moving into a new region, then IEntityTransferModule.Cross() is triggered to initiate the cross process.
- Cross() calls ISimulationService.UpdateAgent() on the receiving simulator with information about camera position, animations, attachments, etc.
- This feeds through to Scene.IncomingUpdateChildAgent() in the receving simulator's region.
- The receiving simulator adds attachment information to it's own data model for that agent.