14th Apr2009

Nodes & Attributes

by Johan Borgström

Node - A construct that holds specific information, along with the actions associated with that information. Maya creates, connects, evaluates, and destroys nodes. At any moment, what you see in the Maya workspace is the result of Maya’s dynamic, node-based architecture, which continuously evaluates the web of nodes that underlie and comprise your work. Each node can receive, hold, and provide information with attributes. A node’s attributes connects to the attributes of other nodes, thus forming a web of nodes (node network). Nodes are the engines which drive the dependency graph. Data comes in to nodes, they perform an operation on the data, and they make the new data available again. The data comes in through the input plugs (instantiations of the nodes attributes) and goes out through the output plugs. At no time should a node require any additional external data beyond what is available through its plugs.

Maya is built around nodes. An “object”, such as a sphere, is built from several nodes: a creation node that records the options that created the sphere, a transform node that records how the object is moved, rotated, and scaled, and a shape node that stores the positions of the spheres control points.

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.

Transform node - A node that contains an object’s transformation attributes. Values for its translation, rotation, scale, and so on. It also holds information on parent-child relationships it has with other nodes. InnerSolarSystem, Sun, Moon, and all other boxes shown in the example are transform nodes.

Shape Node - A node that holds an object’s geometry attributes or attributes other than the object’s transform node attributes. A shape node is always a child of a transform node. Unlike transform nodes, shape nodes do not appear in the Outliner by default.

An attribute is a position associated with a node that can hold a value or a connection to another node. Attributes control how a node works. For example, a transform node has attributes for the amount of rotation in X, Y, and Z. You can set attributes to control practically every aspect of your animation. There are many ways to set attributes in Maya: with the Attribute Editor, the Channel Box, the attribute spread sheet, menu selections, and MEL.

Utility nodes - Maya has a few utility nodes that provide extra functions you can use in a shader network.

14th Apr2009

2 basic ways to manage your scene in Maya:

by Johan Borgström
  • Hypergraph – Presents a graphical view of the scene hierarchy or dependency graph, with boxes representing nodes and lines representing relationships.
  • Outliner- Shows a hierarchical list of all objects in the scene in outline form.

The Hypergraph
The Hypergraph is one of two main scene management editors in Maya (the other is the Outliner). The Hypergraph shows a network of boxes representing nodes and lines connecting them representing relationships. You can use the Hypergraph to view and edit hierarchical relationships (the same information the Outliner shows) or dependency relationships (input and output connections between attributes).
In the Hypergraph you can both see the DAG and the DG ?
The Hypergraph is a window that shows how the nodes and their connections are organized in your scene. You view object hierarchies and dependencies in the Hypergraph.
The Outliner
You can use the Outliner to examine the structure and components of the scene hierarchy, display shape nodes, connections, and attributes, select and rename an object, and reorder nodes
The Outliner is one of two main scene management editors in Maya (the other is the Hypergraph). The Outliner shows the hierarchy of all objects in the scene in outline form: You can expand and collapse the display of branches in the hierarchy, and lower levels of the hierarchy are indented under higher levels.
I find that the outliner is a good tool to use when it comes to get an overview of your scene or rig. It presents the hierarchy of nodes in a clear way.

14th Apr2009

2 basic ways to view your scene in Maya

by Johan Borgström
  • Dependency – As a graph of connections between nodes. This shows which nodes provide input or output to other nodes.
  • Hierarchy – As a hierarchical list of nodes. This shows which nodes are parents and children of other nodes.

Dependency graph
The dependency graph is one of two ways Maya represents your scene . It’s a chain of nodes. The dependency graph is like a series of instructions for how to get the current scene starting from scratch: “create a sphere A, move these CVs, create a curve B, project curve B onto sphere A to create curve-on-surface C, trim sphere A using curve on surface C”, and so on.
The dependency graph gets its name from the connections between nodes. In the example above, the project curve operation depends on two inputs: sphere A and curve B.
Each node in the dependency graph represents an action to build up or change the scene, with the final result being the scene in its current state.
What this lets you do is modify or reshape input objects, change attributes on a node, change node connections, or delete nodes, and have Maya automatically and instantaneously update the entire scene to reflect the changes.
The connections between creation and editing nodes is also called construction history, because it records the history of how the scene was constructed.
You can view and edit the dependency graph in the Hypergraph.

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.

Scene hierarchy
The scene hierarchy is the grouping of child nodes under parent nodes. While you could create a scene without establishing a hierarchy, you will find that it makes modeling and especially animation much easier. You can view and edit the scene hierarchy with the Outliner or the Hypergraph.
In general, the arrangement of parent-child relationships for all connected nodes that make up an object (also known as object hierarchy) or a scene (also known as DAG or scene hierarchy).