Strange Action Constraint behaviour - many objects moving, instead of the one proper

I have a strange behaviour of Action Constraint. In the second file there is model of spaceship (not mine), that looks complex but in fact its only one parent with multiple children. Some of those children has actions and I created up to now three Action Constraints nested in parent object. The problem is, if active, these constraints move the whole model, instead of triggering proper action. I cant figure, why and why only these objects, parts of the model (not a custom created). Parenting seems to be not a link, as I have tried unparening of one object with the same result.
First two action con have drivers, but it seems unrevelant. The last one have the same, strange behaviour.
I have made a test file, the fisrt one in list, in which everything seems to work fine.

So, what’s *ked up in the second file and how to fix it? Or what do I not understand?

Edit: Action Constraint added to particular action owner leads to movement o this object only. But again - why?!

actions.blend (835.6 KB)
sinonatrix-act.blend (4.7 MB)

Let me make sure I understand the problem. When we enable the first action constraint, “Action”, on “Sinonatrix_parent”, the empty changes position, everything changes position, and you want to know why that happens?

Because the evaluation time is 0.0, corresponding to frame 1, and the action referenced, “Front piston.A.001Action”, has location keyframes on that frame of -3.1, 3, -0.9. So when you activate the action constraint, on evaluation time 0.0, it moves the empty by that much.

Why does the whole model move when the empty moves? Because the whole model is parented to that empty. Any transform the empty takes, its children will inherit, and then their children will inherit from them, and so on.

I’m not sure why you included the first file-- it behaves exactly the same. When you enable the action constraint on Empty, it changes position, and its child Empty.001 changes position as well.

I suspect that the action was not designed for the empty given that action and that you were hoping the action for which it was designed will just inherit the action from its parent, but it won’t. The action is a set of transforms that can be applied to any object, and the action constraint is applying them to Sinonatrix_parent.

1 Like