What's the difference between a leaf attribute and attribute?

I’m playing around with .anim files and came across this in docs:

//The strings are: the full attribute name, the leaf attribute name,
// and the node name. The row, child, and attr ints are still required.

anim [string] [string] [string] [int] [int] [int]

An example of this would be:

anim translate.translateX translateX nurbsCircle1 0 1 1;

So what is a leaf (in the example above it’s “translateX”) and how can I think about it in terms of attributes? How does it fit into the hierarchy of an object? Why does a .anim file need the leaf? Thanks!

.translateX is basically a “sub-attribute” of .translate. If you’re connecting or setting those you have to be sure that the parent attribute is not already locked or connected. All the default transform attributed (translate, rotate, etc) follow this pattern

1 Like