It’s weird that such a basic (and mandatory) constraint is missing from the "top-tier" animation software.
But before someone points to that thing labelled "Parent" under the Constrain menu, or shares links to the help docs. let’s define what parenting actually means.
A parent is a hierarchical relationship: one object is the parent, the other the child. The child follows the parent’s transform (translate, rotate, scale). You do this in Maya by MMB-dragging the child under the parent in the Outliner. Simple.
All objects are initially parented to the world. Changing a child’s parent just changes the hierarchy, it doesn’t affect the object’s ability to be animated.
Now here’s the weird part:
Maya’s so called Parent Constraint doesn’t behave like that at all.
It doesn’t create a hierarchy. It just copies the transform of the target. And if you animate the constrained object? It breaks the illusion completely because it was never a real parent relationship. It’s just a glorified "Copy Transform" by blender language, or "position constraint" by 3dsmax language, mislabeled as "Parent."
So here’s the question:
Why doesn’t Maya have a real Parent Constraint, one that simulates dynamic hierarchy changes with actual world-space preservation, like Blender’s Child Of, or 3ds Max’s Link Constraint from 20 years ago?
Every DCC has its own philosophy, sure.
So what’s the philosophy here?
Am I missing something?
Or is it the same line of thinking that made Maya users extrude along spline for 20 years… until Mesh Sweep was introduced in 2022?
Replies
https://forums.autodesk.com/t5/maya-forum/constrains/td-p/6719882
Thank you for taking the time to respond, but just to clarify, I’m not asking how to use Maya’s “Parent Constraint.” I’m pointing out that the feature itself is fundamentally not a real parent constraint, and that’s the core issue.
the problem in the link you shared can indeed be solved by a "copy transform" (by blender language) or "position constraint" (by 3dsmax language) or "parent" (by maya language), as all is needed is to have that scalp to follow the exact head animation with or without offset, because the scalp does not need to move.
lets explain what copy transform is first, it means copy the transforms from parent and apply them to child frame by frame, if child is animated, copy transform is no longer valid as it cannot do its job.
lets take a second example, if you parent a knife to the hand, that knife will follow the hand, if you move the fingers, you will have to animate the knife, it can be done if you parent through the outliner with a real parenting, but if you use constraint, the moment you animate the knife, the link is broken in maya, but works fine in every other DCC, why? because maya does not have a "parent" constraint, it has a copy transform labelled "parent" .. like a fiat car with ferrari logo, it does not make it a ferrari.
I also know the maya solution (or better say workaround), you have to:
1. create locator
2. align locator with hand
3. parent locator to hand through outliner
4. parent constraint the knife to locator
while in any other DCC its:
1. parent constraint knife to hand
In Maya the way you Parent something to get a Hierarchy is to select the object (target) and then select the other object that is going to be the Parent and press P. The constraints can be used to control your rig with Controllers. Usually the controllers are made with splines to make the life of the animator more pleasant.
I don't rig in Blender so I'm not sure what your desired outcome is. Do you not want to be able to animate the knife by mistake? In Maya you can lock and hide the transforms you don't want the animator to modify by mistake. This is step is done at the end of the rigging process to prevent the animator from breaking the rig.
to be able to animate the child, the constraint name is "parent" so it should act like parenting using "P" (p for parent),
Maya Keyboard Shortcuts, Hotkeys & Commands Guide | Autodesk
(as you know, if you parent an object to another using "P", animating the parented object does not break the hierarchy, unlike the "parent" constraint), if it cant, then its something else labelled "parent"
if you know 3dsmax, then you have two constraints:
• position constraint
• link constraint
link constraint act like a link but without changing the hierarchy
position constraint makes an object keep the same offseted position from the object it is constrained to
but in maya you have only one:
• position constraint (parent)
and link constraint is completely missing, if you want it, you have to simulate it through a long process as I explained in my second reply.
usability: parenting with "P" in the outliner works for only one object, if you want to space switch it between two objects, lets say gun from belt to hand, you will have to parent constraint it, if you do so in maya, boom .. you're not able to animate the gun to repositions it properly in the hand.
you can say, yeah but in maya we dont
1. parent constraint the gun to belly
2. parent constraint the gun to hand
3. animate influence,
instead we
1. create a locator at belly
2. create locator at hand
3. parent with "P" the first locator to belly
4. parent with "P" the second locator to hand
5. parent constraint the gun to first locator
6. parent constraint the gun to second locator
7. animate the influence
So yeah, Maya can simulate parenting. But not through the parent constraint, and not in a clean or intuitive way. If it takes 7 steps and 3 locators to do what one node in Blender or one constraint in 3dsmax can do, that’s not a feature. That’s a workaround!! and a tedious one.
I'm trying to make a script that does this:
Specify what the child object is
Parent constraint the target to the object's offset(locator)
Set the keyframes either with S shortcut or the UI
Parent constraint the target to the other object's offset in the list(locator)
Quality of life things:
when you select the object from the parent list the object in the scene is selected and vice versa
yes, at 50% you get thet spring effect, and you move influence to 100% and 0% depending on which you want the object to follow.
but the thing is, as soon as you animate the object (not the influence), the link breaks, hence the locators, which is an extra step
you can achieve the same behaviour in max using dummies (the equivalent of locator), and position constraint,
But if you want real dynamic parenting with proper world-space preservation, you use Link Constraint.
which means link constraint is a whole missing thing, which is weird given that maya is the "superior" animation tool, and both belong to autodesk.
I tried doing a parent constraint the target to both rect A and rectB. The reason I wanted to add locators was to be able to offset the target as needed.
i actually don't know how you'd do this other than to animate the influence as you would with an fk/ik blend rig - i haven't done any maya character rigging since about 2012 though so any number of things could have changed (i.e. moved to a different menu)