First look at the Scene Graph 

  
The scene graph consists of superstructure 
  components-a VirtualUniverse object and a Locale object-and a set of branch 
  graphs. Each branch graph is a subgraph that is rooted by a BranchGroup node 
  that is attached to the superstructure. 
  A VirtualUniverse 
  object defines a named universe. Java  3D permits the creation of more than 
  one universe, though the vast majority of applications will use just one. The 
  VirtualUniverse object provides a grounding for scene graphs. All Java  3D 
  scene graphs must connect to a VirtualUniverse object to be displayed.
Below the VirtualUniverse object is a 
  Locale object. The Locale object defines the origin, in high-resolution coordinates, 
  of its attached branch graphs. A virtual universe may contain as many Locales 
  as needed. In this example, a single Locale object is defined with its origin 
  at (0.0,  0.0,  0.0). 
 The scene graph itself starts with the 
  BranchGroup nodes. A BranchGroup serves as the root of a subgraph, called a 
  branch graph, of the scene graph. Only BranchGroup objects can attach 
  to Locale objects. 
 In this example there are two branch 
  graphs and, thus, two BranchGroup nodes. Attached to the left BranchGroup are 
  two subgraphs. One subgraph consists of a user-extended Behavior leaf node. 
  The Behavior node contains Java code for manipulating the transformation matrix 
  associated with the object's geometry. 
 The other subgraph in this BranchGroup 
  consists of a TransformGroup node that specifies the position (relative to the 
  Locale), orientation, and scale of the geometric objects in the virtual universe. 
  A single child, a Shape3D leaf node, refers to two component objects: a Geometry 
  object and an Appearance object. The Geometry object describes the geometric 
  shape of a 3D object (a cube in our simple example). The Appearance object describes 
  the appearance of the geometry (color, texture, material reflection characteristics, 
  and so forth). 
 The right BranchGroup has a single subgraph 
  that consists of a TransformGroup node and a ViewPlatform leaf node. The TransformGroup 
  specifies the position (relative to the Locale), orientation, and scale of the 
  ViewPlatform. This transformed ViewPlatform object defines the end user's view 
  within the virtual universe. 
 Finally, the ViewPlatform is referenced 
  by a View object that specifies all of the parameters needed to render the scene 
  from the point of view of the ViewPlatform. Also referenced by the View object 
  are other objects that contain information, such as the drawing canvas into 
  which Java  3D renders, the screen that contains the canvas, and information 
  about the physical environment.