VWW URL

From Virtual World Web Wiki
Jump to: navigation, search

Users navigate to |Scenes using a URL very similar to an HTTP URL you would be used to using in your favorite web browser. A VWW URL takes the following form:

Basic URL Syntax

vww://<ServiceProvider>/<World>/<World>/<Scene>#<StartPoint>?<Query>

For example:

vww://vrmeeting.space/ref/bots

In this example the Service Provider we're connecting to is vrmeeting.space. The Root World (represented by the first slash after the service provider or host name) contains a child world called "ref" (the reference world). That world finally contains a scene called "bots" (the Game Cloud bots demo scene).

Alias vs Title

Worlds and Scenes have both a Title and an Alias. The title of a scene or world is how it is displayed to users, and can contain any printable text. A scene or world title does not need to be unique. The alias of a scene or world however, must be unique within it's parent container. For example you cannot have two scenes in the same world called "lobby". This is because the alias of a scene or world is what is used to form its part of the VWW URL. This also means that Aliases must be URL safe (generally a-z, A-Z, 0-9, "-" and "_").

Default Start Scene

If a VWW URL has no scene part (for example vww://vrmeeting.space/ or vww://vrmeeting.space/ref/) the server will search for scene in the specified world called "start". In the case of the first example, the world being searched is the Root World, in the second case it's the "ref" world.

In the case where it's ambiguous (for example vww://vrmeeting.space/ref, note the missing trailing slash), the server will:

  • First check for a scene called "ref" in the Root World
  • Then check for a world called "ref" in the Root World, with a scene inside it called "start"

This system makes it possible to have nice short URLs where "start" is assumed, like in the naked domain name examples above. This behavior is very similar to most web servers default document mechanism where index.html (or similar) is the default document in a folder if no filename is specified in the URL.

Start Points

A VWW URL can specify a Start Point using standard fragment syntax (#startpoint). If one is specified, the server will attempt to move the avatar to the position represented by a DOMStartPoint object in the scene with a name matching the start point requested.

DOMStartPoint objects can specify which platform they apply to (so headless clients can start out at different locations for example).

If no start point is specified on the URL, and there is a DOMStartPoint object in the room marked as the "default", its position will be used.

Query String

If query information (after the "?" character) is present in the URL it is maintained and accessible to Components via the Connection Identity's location property. See IConnectionIdentityBase and ILocationInfo for more information.