There are a few specialized node types in the DAZ Studio SDK:
DzCamera | - The base class for all camera objects in the scene. |
DzLight | - The base class for all light objects in the scene. |
DzSkeleton | - Serves as the root or 'Body' node of a figure. |
DzBone | - Represents a single part or 'Bone' in a figure. |
The scene keeps a list of all the nodes in the scene. It also keeps three lists of specific node types for convenience:
Skeleton list | - A list of all figures (skeletons) in the scene. |
Camera list | - A list of all cameras in the scene. |
Light list | - A list of all lights in the scene. |
Diagram 1 shows the relationship of all the items in the scene when the scene contains two props (a ball and a box), two lights, and a camera:
Diagram 2 shows a similar scene, only with a simple figure in place of the two props:
The simple figure from the second scene is a good example of a node hierarchy. In this case, 'MyFigure_#' is a root node which has one child: 'Hip'. 'Hip' in turn has three children: 'Abdomen', 'Left Leg', and 'Right Leg'. 'Abdomen' has one child: 'Chest'. 'Chest' also has three children: 'Head', 'Left Arm' and 'Right Arm'.
Let's say that in the scene, the user has seated the figure, parented it to a chair, parented a crown prop to the figure's head, and parented a sceptre prop to the figure's right arm. The node hierarchy would now look like this: