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 }