With the nodes below defined, to read the name of the Browser, the behavior would call
GetNamedFieldSFString("_Browser.name");
These access a set of pseudo nodes in the browser. The definitions of these
need fleshing out, but the following set are offered to start the thinking
going.
DEF _Browser Browser {
name "" # SFString READ name of the product e.g. "Worldview"
version 0 # SFLong READ version e.g. 1.0
langversion 1.0 # SFLong READ version of VRML supported
nodeTypes [ ] # MFString READ nodes supported
extensions [ ] # MFString READ named extension packages supported.
machine # SFString READ machine name running on e.g. "PC"
operatingsystem # SFString READ operating system running e.g. "Windows95"
}
DEF _World WorldInfo {
environment # SFNode READ pointing to current environment node
navigationHints # SFNode READ pointing to current NavigationHints
cameras # SFNode READ pointing to list of cameras
title # SFString READWRITE contents of the title bar
sceneInfo # SFString READWRITE giving the sceneinfo for the current world
worldURL # SFString READ URL or world running
enteredWorld # SFTime READ time started viewing this world
}
DEF _Self SelfInfo {
navigationMode # SFEnum READWRITE current navigation mode
# (which might override that specified in navigationHints)
translationSpeed # SFLong READWRITE translation speed
position # SFLong READWRITE position of the camera
orientation # SFRotation READWRITE orientation of the camera
avatar # SFNode READWRITE (optional) your avatar
neighbours # MFNode READWRITE (optional) visible neighbours' avatars
frameRate # SFLong READ number of frames per second
picked # SFBool READ true when mouse button down
}