Bendy bones with extra bones

Ohai, new to Blender here.

I’m trying to create a setup, where I need some bones to respect the shape by position only. Bendy Bones have so far got me the closest, but it’s still far from what I was aiming for.

Is it possible?

Perhaps another method? Would it be possible to animate a curve, and have a chain of bones respect the shape of the curve? If so then I think that could to the trick.

Yes it’s easy. Just put position constraint on every bones you want to follow bendy bone curve then adjust position of every constrained bone by head\tail slider in constraint and click button right after this slider enabling ‘follow shape’. That’s it.

Awesome. That worked.

There is just one thing now: the bones do not rotate at all. Is it possible to have them rotate relative to the bendy bones?

I tried with the rotation constraint, but with no luck.

If you want some pseudo-child bones of the bendy bone, that follow the curve described by it, you need to use a copy transforms constraint to acquire the bend-- same thing with head/tail, enable “follow b bone” and then adjust head/tail to eye.

Since copy transforms doesn’t have any kind of offset options, for your bones at an angle, you need to create another layer, of unconstrained bones, parented to bones with the copy transforms constraints.

If you don’t want to inherit scale from the bendy bone, you can do this by following your copy transforms with a limit scale, or by setting the scale inheritance mode on the final layer of children (in properties/bone/relations.)

It is weird that Blender doesn’t just have relations options, for regular parenting, to inherit from b-bone rather than straight bone.

Thanks so much for the help!

I used rotation constraint instead of transforms, because transforms affects the scaling too and I don’t want that.

I think I’m pretty much there. Now I’ll move on with the idea I had in my mind :smiley:

Okay, if you’re good, you’re good. But copy rotation won’t copy the rotation of the individual bendy segment, which is what I thought you wanted.

I think Alexander added those for 2.92 ? Or was it something else ? I remember reading something to that effect.

1 Like

Oh, I guess so. In 2.91 as well. Haven’t played with those yet though.

That and copy rotation does copy bbones segments’ rotation ! It’s been a few versions I think. Really changed the game…

Ah, nah scratch that. That’s copy transforms sorry. I spent too much time away from rigging.

I duplicated the rig and changed the constraints to transform on the copy. It’s exactly the same (beside the stretching). With transform constrain I have added option to enable follow shape of b-bone and a slider for head/tail bias, which leaves tiny room for some tweaks which could be useful - but the stretching ruins it for my need.

I’m on Blender v2.91.0

It may be exactly the same under some circumstances, but it’s not exactly the same under all circumstances:

The copy rotation copies rotation from the overall bone, rather than the appropriate segment like the copy transforms constraint does.

Notice that I gave it a limit scale constraint, limiting it to a world space scale of 1.0-1.0 in all axes. This will override inheriting any scale via the copy transforms constraint.

Yes, I’m using 2.91.0 as well.

Here’s a file:

bbone.blend (124.0 KB)

Lazy wording on my part - it was before follow shape was enabled. However the transform constraint works, it didn’t look right in my setup.

I see what you mean in your setup. I made mine slightly different and rotation constraint works whereas in yours, it doesn’t. I don’t have a file saved with both methods. I can redo it if you would like to have a peak.

Awesome with the limitation constraint!

If you got something you’re happy with, then that’s all that matters-- as long as you’ve got a good grasp on how its going to behave in all circumstances (you don’t want to see interpolation problems only after spending a week rendering). I don’t need to see, I just wanted to make sure you were aware of the potential issues.

You are right and I’m already aware of it. I was able to create a similar rig using curves (made it right after having posted here), but the bones would jump a lot with it, when the control points got too far away. I didn’t spend too much time with it to see if it was a display thing or something I should be very careful about.

I’ve done professional 3d, just not in Blender. One thing I’ve learned, it’s that you are not done till you are done. This rig will have to prove itself and maybe improved or changed, once I start animating. I did some blocking animation and it held up so far.