Browser J3D structure:
The browser has two kinds of J3D structures: permanent structures which
are changed the current scene and reset for each URL, and a scene
branchgraph which holds the J3D tree parsed from the current VRML url.
The permanent BranchGroup is called browserRoot. It holds:
- the browser's behaviors (which control the VRML runtime)
- a FogSlot and a BackgroundSlot which groups which hold the currently
active VRML Fog or Background
- The default ViewPlatform, associated with the default Viewpoint
Views:
There is one View, PhysicalBody and PhysicalEnvironment which are used
by the currently active Viewpoint and NavigationInfo.
Each file Viewpoint defines a new ViewPlaform, which get associated with
the view when the viewpoint is bound.
There are default Viewpoint, NavigationInfo, Fog and Background VRML nodes
which are used if the file does not define them
The initial VP, NI, Fog and BG are the value first seen from the file. This
value will be bound in loadFinalize().
The VP, NI, Fog and BG stacks are used after the file is loaded. When each
node is bound, if it is already on the stack, it removed itself from the
stack and then it pushes itself onto the stack. The top entry on the stack
is the currently active value.
The browser also has an ambient light and a directional light (the
headlight). These are added to the TransformGroup which holds the
ViewPlatform associated with the current Viewpoint.
|