Relationships In The Scene Graph
Relationships in the scene graph are described with the terms Parent,
Child, and Sibling. List order can also determine a relationship if
you assume that importance is derived from order in the scene graph.
Sample Hierarchy
- Root Node [ Has no parent or sibling. Parent of Mesh 1, 2, 3, 4 ] [ Most important node. ]
- Mesh 1 [ Child of Root. Sibling of Mesh 2, 3, 4 ] [ Most important sibling. ]
- Mesh 2 [ Child of Root. Sibling of Mesh 1, 3, 4 ]
- Mesh 3 [ Child of Root. Sibling of Mesh 1, 2, 4 ]
- Mesh 4 [ Child of Root. Sibling of Mesh 1, 2, 3 ] [ Least important sibling. Least important node. ]
Basic Terminology
Industry-standard terminology is as follows:
- Root. This is the only node that has no parent or sibling nodes. Every other node in the database is a child of root.
- Parent. Any node with child nodes. Some nodes, such as material and light, cannot have child nodes.
- Child. Any node that has a parent. All nodes have at least one parent, the root.
- Sibling. A node at the same level as another node. The first sibling is always more important than subsequent siblings.
General Rules
Keep in mind the following:
- If a parent is invisible, so are all of its children.
- If a parent is transformed, so are all of its children.
- A transformation to a child node does not affect its parent or siblings.
- If a parent is off-screen, none of its children are rendered.
Rendering Order
Nodes are rendered first to last. As Scenome traverses the scene graph, it renders nodes
as it traverses their part of the scene graph. Nodes closer to the root are rendered before
nodes further from the root. [There are a few neat tricks you can use to change this though.]