What I tell myself everyday.

To all the people watching, I can never ever thank you enough for the kindness to me, I'll think about it for the rest of my life. All I ask is one thing, and this is.. I'm asking this particularily of young people that watch: Please do not be cynical. I hate cynicism - for the record it's my least favorite quality, it doesn't lead anywhere. Nobody in life gets exactly what they thought they were going to get. But if you work really hard and you're kind, amazing things will happen. I'm telling you, amazing things will happen." - Conan 'O'Brien

February 16, 2011

Parent vs Constraint Differences in Maya

From CG talk.

http://forums.cgsociety.org/archive/index.php/t-739070.html

parent object

An object or other item that controls the attributes of one or more child objects. A parent can also be the child of another parent.


parent constraint

A constraint relating the position (translation and rotation) of one object to another object, so that they behave as if part of a parent-child relationship.

The parent constraint allows you to keep elements within their own hierarchy and not have them contained within a larger and hard to understand hierarchy.



the parent constraint is more computationally expensive.

the parent constraint will give you some extra options such as just constraining the translation, rotation and scale.

When and where to use grouping, parenting, parent constraining is more up to the set up you have/what needs to be done.

Parenting is easy for just making something move with something else, but you can still animate the object that is a child freely.

Parent constraining will move one object with another like a normal parenting, but it will lock the childs translations, so that child through the constraint will move in world space or what ever space it is in relative to its parent's movements. With this in mind, people will often use point constraints because a point constraint has offsets you can animate if you wanted.

So really, that parent constraint can return values to control other objects that would otherwise be difficult to find without the parent constraint.

Like lets say you make a locator and a sphere, move the sphere off to the side and parent constrain it to the locator, when rotate the locator, the sphere will receive translation values. Where as if you just parented the sphere under the locator, it will just say the amount you moved it away from the locator, and that number wont change when you rotate the locator.

-----

But the one thing that parent constraining is really nice for is having multiple objects control one object. Like if you select two locators and then a sphere, applying the parent constrain will average the locators' movements onto the sphere.