Is it possible to use full-body IK with scaled bones?

Hello hello,

I’m currently experimenting with the full-body IK, mostly to ground the feet accurately on uneven terrain.
It’s been working nice out of the box for most stuff, but now I’m trying to use it on characters on which I use the “Transform (Modify) Bone” node, and it seems to outright ignore the transformation.

Context : deforming creatures for easy diversity. I’m kinda randomly deforming each bone in the hierarchy a little, and bwah, monster.

In the animation blueprint, I’m going : Animation → Deformation → Grounding → Output.

My test Control Rig is as basic as possible :
All in the Forward Solve : Put control on bone (just realized I don’t even need a control in this setup) → full body IK, all transform except height copied, height (Z) set to 0.

I scale only one leg, but the IK is applied to both. The foot not scaled is grounded, the scaled one is very much not.

downunder

Is it even possible ? Am I doing something wrong ? (yes but waht)

Bonus question, it seems the “ground” in the animation preview is not at the 0 height, can this be fixed somehow ?

Thanks in advance,
Plouf

Why are you scaling only 1 leg? Even for diversity I recommend do not scale leg bones unequally.

  • Or if you make Calf_L shorter, then make Thigh_L longer = so the total [Left leg length] matches [Right leg length].

The problem is the Root bone (third leg).

If you make 1 leg shorter (e.g. calf), then the Root bone is still as long as the [other side of the leg hierarchy]. So idk if the IK solver understands where the center point (Root tip) or Short leg (IK foot) should go.

  • When you made 1 leg shorter (or the other longer), did you also [adjust] its IK foot?

Because in your image, I see one leg/ FK foot under ground level (the longer leg). But its IK foot has not been also lowered - because the IK’s bottom-anchor-point is the bottom-tip of the Root bone (third leg), which also was not lowered or lengthened to match.

1 Like