[Opensim-dev] Technical questions from a viewer developer - varregions

John Nagle nagle at animats.com
Sun May 14 04:54:33 UTC 2023


I'm working on a new viewer. It's connecting to Second Life, and to
non-varregion Open Simulator regions.  Varregions don't work yet.
I need more info on them.

## Simulator to client protocol for connecting to regions

The Open Simulator wiki says, at

http://opensimulator.org/wiki/Varregion

"The implementation uses the Aurora large region protocol extensions so
the existing Firestorm and Singularity Aurora support will now work for
OpenSimulator."

This references

http://opensimulator.org/wiki/Varregion/Protocol

which says:

  Simulator to Client Protocol

     EnableSimulator event message: add integers 'RegionSizeX' and
'RegionSizeY'
     CrossRegion event message: add integers 'RegionSizeX' and
'RegionSizeY' to 'RegionData' section.
     TeleportFinish event message: add integers 'RegionSizeX' and
'RegionSizeY' to 'Info' section.
     EstablishAgentCommunication event message: add integers
'region-size-x' and 'region-size-y'.

This is, apparently, obsolete, according to Ubit. Although there is
still code for those LLUDP messages in Firestorm. Does anything still
use those now-blacklisted UDP messages? Ubit has said that region size
info is now passed via an HTTP capability. But which capability, and in
what format?

Does anybody still use that old Aurora format?

The obsolete Varregion article also says that regions are limited to
multiples of 256x256 and that sizes cannot be mixed for regions that
touch. Are those obsolete restrictions, or should mixed-size regions
be handled? If so, how does a sim find all its neighbors?

Are non-square regions now supported?

(An argument for mixed-size regions in a grid is that you can have large
regions of mostly empty space as large regions, with smaller regions
for heavily populated areas. I'm willing to support that if the protocol
is documented.)


## Terrain patches

The wiki says " Implementation Discussion (Obsolete)", and
that, as of the obsolete version, terrain was sent the Linden Lab way,
as patches with discrite cosine transform compression. The discussion
on the wiki suggests this be replaced with generalized meshes. Was that
ever supported? I would guess not, but would like to be sure before
I implement.

For larger regions, do the terrain squares get bigger than LL's 4x4 
meter size? Or are there just more 4x4 terrain squares?

				John Nagle
				Animats



More information about the Opensim-dev mailing list