Answered

IK error

giantkiller 12 months ago updated by Peter - Soxware Developer 12 months ago 1

I get this and dont know how to correct the IK.

UMotion Version:
1.26.p03
Unity Version:
2020.3.4f1

Answer

Answer
Answered

Hi,

thank you very much for your support request.

The easiest way would be by creating a fresh UMotion project, and let the IK setup wizard do the IK setup for you. The IK setup wizard should generate a correct setup that does not have a dependency loop.

If you want to correct your setup by hand, make sure that the IK handles are not a child of a bone inside the IK chain.  From what I see in the screenshot, your "IK_Hand_L" handle is a child of the "Bip001 L UpperArm" which is part of the IK chain. That would cause a dependency loop as the IK constraint is manipulating the rotation of the upper arm based on the "IK_Hand_L" position, but doing so will also alter the position of the IK_Hand_L as it is a child of the upper arm --> it's a loop. Make the "IK_Hand_L" a child of the "Bip001 L Clavicle" instead.

If you still get errors (for other bones), try to identify and solve the issue based on the same principles.

Let me know in case you have any follow-up questions.

Best regards,
Peter

GOOD, I'M SATISFIED

Thanks for both answers!

Satisfaction mark by giantkiller 12 months ago
Answer
Answered

Hi,

thank you very much for your support request.

The easiest way would be by creating a fresh UMotion project, and let the IK setup wizard do the IK setup for you. The IK setup wizard should generate a correct setup that does not have a dependency loop.

If you want to correct your setup by hand, make sure that the IK handles are not a child of a bone inside the IK chain.  From what I see in the screenshot, your "IK_Hand_L" handle is a child of the "Bip001 L UpperArm" which is part of the IK chain. That would cause a dependency loop as the IK constraint is manipulating the rotation of the upper arm based on the "IK_Hand_L" position, but doing so will also alter the position of the IK_Hand_L as it is a child of the upper arm --> it's a loop. Make the "IK_Hand_L" a child of the "Bip001 L Clavicle" instead.

If you still get errors (for other bones), try to identify and solve the issue based on the same principles.

Let me know in case you have any follow-up questions.

Best regards,
Peter