Answered

IK error

giantkiller 3 years ago updated by Peter - Soxware Developer 3 years ago 1

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

Image 880

Image 881

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 3 years 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