Bones - IK Solver that scales?

I have the following IK rig:

It works, but I would like the three IK bones to scale (along bone-y) when the IK (dotted) length increases or decreases. These three IK bones are not straight in Edit-Mode, I pre-curved them; the screenshot matches EDIT mode as well. I have IK Stretch option turned on, but it doesn’t seem to do anything.

I am essentially trying to stretch-compress a curved shape along it’s curve using this rig; it’s fine if the volume is not maintained.

You need to enable the stretch values in bone properties for each bone that needs to stretch and is affected by the IK constraint.

The Inverse Kinematics panel is also where you would set limits, stiffness, and axis locks for bones affected by an IK constraint. Limit type constraints will not work for bones affected by IK constraints.

Good luck!

Thanks for the tip; I turned that on. However, the IK bones do not scale equally, is there a way to do that? I tried a copy-scale, but it went crazy.

It may be better if you explain what the end goal is. It’s possible that a different solution can be found. Right now, it’s unclear what you are actually after.

To answer your question about if there is a way to have each bone scale equally, I do not know. I’ve never tried this or had a need to figure out a solution for that problem.

What are you rigging? Are you using a curve object (bezier curve, nurbs curve or path)?

Essentially, I want the IK chain to straighten (by having the bones shrink) as the dotted line gets shorter.

I am not sure why you want this still, what does your model look like?

So, if it is an object that needs to straighten, you could use a curve object with Hooks to achieve this as I show in this enclosed blend file:

stretch-rig.blend (470 KB)

As with all my blend files here - just press Play to see it working.

Or, you need to show me the model and I might be able to help further… :eyebrowlift:

Cheers, Clock.