Transformation constraints question

Hello all. I have question. I have character rig with ponytail (simple bendy bone with ‘stretch to’ constraint) so i want my ponytail to move down and backward when character bends back.

I have used transformation constraint so when head of my character is rotating by x axis so my ponytail is moving as i want.

But problem is when i rotate other spine bones - neck or chest, i have no effect for ponytail.

Is there way to fix this so transformation for ponytail are applied when any of spine bones are rotated?

You won’t get there with the transformation constraint…

If it were me, I’d use a small bone located at the end of the ponytail to control the ponytail, and parent that bone to the head bone. Then use a track to, or IK constraint on the ponytail targeting the new bone. This way, the new bone would control the ponytail and allow you to adjust it, and the control would move as the head does…

Randy

1 Like

Thank you for reply. I will try your suggestions. Will search other solutions than transformation constraint.

Have a look at this…

It’s a chest, neck, and head bones, with a ponytail bone. The ponytail bone is controlled by the ponytail_ctrl bone. The pony tail ctrl bone is a child of the head bone…

As anybone moves the head bone, the ponytail follows the head. And can be controlled by the ponytail_ctrl bone…

untitled.blend (337.3 KB)

Randy

1 Like

Thank you Randy. I have similar set up for my ponytail except ponytail control bone is parented to root bone. I was trying to make some automated movements for that control bone when spine bones are bending back. But it working only with head bone. You can look at blend if you wish. Try to rotate head bone backwards and see how ponytail is moving, and then try to rotate neck or chest - nothing happens:

tail.blend (617.5 KB)

Nothing happens when you rotate the neck or chest because the constraints are targeting the head bone, and the head bone isn’t moving. The head bone doesn’t rotate when the neck or chest bone rotates. It looks like it does, because the neck or chest bone rotates it because it copies their rotation since it is a child of them.

Randy

So there is no way to implement what i want with constraints? To apply transformation when bone is moved by rotation of other bones, not only that bone which is constrained? Maybe i should find other way to simulate ponytail like moving my bone by other object with cloth physics. Anyway thank you for answers!

You could add a second constraint with the neck as the target, you can add as many constraints as you like here.

Cheers, Clock.

PS. I would use an IK chain and move the IK target based upon relative movement of the top pony tail bone from the thorax bone in any axis other than global Z…

Could you make quick example if you have some free time. I would like to learn more options for such tasks. Thank you in advance.

I am visiting my family in Sweden this week, but may get some time to do quick mock-up in the next day or so.

Cheers, Clock.

1 Like

Regarding the Transformation constraint + neck bones, I’d try changing the constraint source space type to Local With Parent: https://docs.blender.org/manual/en/latest/rigging/constraints/interface/common.html#space-types

The destination space type can be Local I think.

1 Like

Interesting idea my friend clockmender, I’d like to see what your thinking. You say ‘movement’ as in loc, or rot, movement? I think I will tinker with something…

CYNIC78, what is the end purpose of this? Is this for a game engine, or a blender animation? The best course you take will depend upon the end use.

Randy

So this is how I did my latest girl, she flies a glider for some instructional videos I am doing for my club. She has this bone structure for her ponytail:

There are four bones in the IK chain, I could have used one bendy bone instead, but I prefer this setup for a ponytail, no real reason why though, only that you can make them disconnected and then move them apart.

You can see pony-tail-IK and pony-tail-POS bones. The -IK bone is the IK target for her ponytail and is parented to the -POS bone, this is the one I move to a suitable position using Animation Nodes, so this requires my AN additional nodes that allow you to add bones into the node tree. So, when I tilt her head back like this, using the bottom neck bone:

You can see that -POS moves back and down so the ponytail still hangs like it did before, but I can also move the -IK bone independently to either stretch, or crinkle the ponytail a little as I did above, you can just see that -IK is no longer exactly on -POS. This means that whichever bone I tilt, any of the three neck bones, or the head bone - the -POS bone is moved automatically to keep the ponytail in line and I can then make small, keyframed adjustments to the -IK bone to suit. Here she is with her head rotated and her ponytail end restrained by the seat and her seat-belts/ parachute straps:

The trick is to mainly move the -POS bone when the head is tilted back and only a very small amount when the head is tilted forward, so the ponytail doesn’t disappear inside her head. It should be possible to do this with Drivers and/or Transformation Constraints, I will have a look at this once I get back home and no longer have the distraction of granddaughters… :laughing:

Cheers, Clock. :beers:

1 Like

Thank you for your reply clock. I will try to set up similar system and will see how it works. And will be wait if you will messing up with constraints to get something usable. Thank you once again! :slight_smile:

@CYNIC78 what is the end use of this? blender animation or a game engine?

I have different ideas than clockmender, but having a hard time nailing down a way to show what I have in mind, due to limited time to spend on this. I will have something soon…

Randy

1 Like

It’s for BGE. To work realtime.

Let me know what your thoughts are my friend, maybe I can help a little here…

Cheers, Clock.