SONY's Extension to VRML2.0
New nodes
SONY_SharedBindingNode
is newly introduced to support multiuser functions. This node is used
- to make a 3D object to be shared among clients, and
- to associate the 3D object with a Script node whose eventIns are called
remotely.
Prototype definition of this node is:
PROTO SONY_SharedBindingNode [
field SFNode transformNode NULL
field SFNode scriptNode NULL
] { }
This node is defined to be expanded to nothing so that VRML 2.0
browsers other than Community Place can safely ignore the node.
In the Community Place browser, this node is treated in a special way.
A transform node specified for transformNode field of this node is
made sharable among clients. In other words, nodes other than those
specified in this field are not shared. The field transformNode must
be specified and its value must be a Transform node.
If the value of the scriptNode field is not NULL, the value must be a
Script node. The Script node's eventIns can be called remotely. You
can call sendApplSpecific() or sendApplSpecificWithDist() Java APIs
with specifying the target (the first argument) to be the Transform
node specified in the transformNode field and eventIn name (the second
argument) to be the eventIn names that appear in the Script node.
The third argument of the APIs is a string value, which will be the
value of eventIns of the Script node. The eventIns must be of type
SFString to accept the values sent using the APIs.
Here is an example:
PROTO SONY_SharedBindingNode [
field SFNode transformNode NULL
field SFNode scriptNode NULL
] { }
DEF T1 Transform { ... }
DEF S1 Script {
eventIn SFString IN1
eventIn SFString IN2
...
}
SONY_SharedBindingNode { transformNode USE T1 scriptNode USE S1 }
SONY_Appearance
Extends the original Appearance node by putting two new fields:
- backface: specify if polygons representing a Shape have back
faces.
- description: specify a description attached to a Shape.
Community Place Browser allows you to see a description by putting the mouse cursor on
a shape.
The definition is as follows:
PROTO Sony_Appearance [
field SFBool backface FALSE
exposedField SFString description ""
exposedField SFNode material NULL
exposedField SFNode texture NULL
exposedField SFNode textureTransform NULL
] {
Appearance {
material IS material
texture IS texture
textureTransform IS textureTransform
}
}
Parameters described in WorldInfo
The followigs are described using WorldInfo's "info" field. Thanks to the
fact that "info" field is a MFString, you can specify multiple parameters in
a WorldInfo.
VsServer, CPBureau
Specify the VsServer's address and port for a content.
e.g. WorldInfo{info "VsServer: vsserver.foo.com:5000"} or
WorldInfo{info "VsServer: 12.23.34.45:5000"}
ArmLength
Specify how far your virtual arm can reach in a world. This parameter is
used to decide if an object can be touched. This parameter is specified by
"meter".
e.g. WorldInfo{info "ArmLength: 5"}
WorldLocationServer, CPBureauWLS
Specify the world location server's address and port for a content.
Also you must specify 'title' in WorldInfo when you use the WorldLocationServer.
e.g.
WorldInfo{
title "myworld"
info "WorldLocationServer: vsserver.foo.com:6000"
} or
WorldInfo{
title "myworld"
info "WorldLocationServer: 12.23.34.45:6000"
}
Archive
Specifies an archive which contains files used in this VRML file.
These files are extracted and placed in appropriate local directories
so that they can be accessed using relative paths from the place where
this VRML file is placed. This method reduces the necessary
connections during loading the content. For the compatibility with
other browsers, these files should be placed in approriate remote
directories as well.
The archive itself is created using LHA archiver and must be placed in
the same directory as this VRML file is placed.
E.g.
WorldInfo {
...
info [... "Archive: foo.lzh"]
}
SonyAvatarRoom
Specifies if an avatar room (for changing avatar color) description
file is provided for this world. You can specifiy TRUE or FALSEas the
value. If the value is TRUE, a file named avtroom.wrl must be
supplied in the same place as this VRML file. The avtroom.wrl is expected
to provide the functionality of changing avatar part colors.
WorldInfo {
...
info [... "SonyAvatarRoom: TRUE"]
}