Nodes, history, and the deformation order
 
 
 

One way to think about a scene in Maya is that it is a web of nodes. Each node consists of specific information and actions associated with that information. Each node can receive, hold, and provide information by means of attributes. A node’s attributes can connect to the attributes of other nodes, thus forming the web of nodes. As you use Maya’s interface, Maya creates, connects, evaluates, and destroys nodes. At any moment, what you see in the workspace is the result of how Maya is continuously evaluating the web of nodes that underlies and comprises your work. In short, underlying everything you do in Maya lies Maya’s dynamic, node-based architecture.

Dependency graph

Maya’s dependency graph provides a representation of the relationships between connected nodes. To view the dependency graph, you can use the Hypergraph. For more information, see Dependency graph.

For any particular node, the dependency graph shows the node’s history. The node’s history includes all the nodes that are connected to it, or are connected to nodes that are connected to it, and so on. For discussing a node’s history, the terms input and output connections can be useful. Input nodes are nodes that can be evaluated before the node itself is evaluated, and Output nodes are nodes that can be evaluated only after the node itself is evaluated. Note that, from Maya’s perspective, a node’s history includes its future as well as its past.

Deformation order

It’s important to keep a node’s history in mind when using deformers. The deformation effect provided by a particular deformer can depend on where Maya places the deformer in the node’s history. The reason is that the deformation effect can vary depending on the order in which Maya evaluates the deformations. The order in which Maya evaluates deformations is called the deformation order.

In general, you can apply as many deformers to an object as you like. Since the effects depend on the order in which the deformers deform the object, you can create a great variety of effects. For example, if you create a bend deformer and then create a sine deformer, the result is different than if you first created the sine deformer and then created the bend deformer.

By default, the order in which deformers act on a deformable object’s original shape is the order in which the deformers were created. The deformers created first act on the original shape first, and the deformers created last act on the original shape last.

Deformation chain

Consider the history of a NURBS sphere being deformed by one or more deformers. In the dependency graph, the original (undeformed) shape node (nurbsSphereShapenOrig) would follow immediately after the make node (makeNurbSpheren).

Note Maya sometimes refers to an object displayed as the original shape node as an intermediate object.

Maya places a tweak node (tweakn) after the original shape node (for more information on tweak nodes, see Point tweaking objects). After the tweak node, Maya places the deformer nodes that carry out deformations, typically in the order that the deformers were created. The order in which Maya places the deformer nodes (outputs) from the original shape node determines the deformation order. However, you can control deformer placement (see Deformation order) when you create a deformer, and change the deformation order (see Changing an object’s deformation order) after creation. Finally, after the deformer nodes, Maya places a shape node that provides the final (deformed) shape of the sphere (nurbsSphereShapen).

The sphere’s history determines the deformation order. Since Maya evaluates the sphere starting from the make node and working all the way through in order to the final (deformed) shape node, the node connections involved are said to provide a deformation chain.