Not a bug

Arms and legs flip out after pinning, pole vectors not matching fk animation

ytGameDevDave 2 weeks ago updated by Peter - Soxware Developer 2 weeks ago 1

I usually go through the cycle of exporting > importing and tweaking fk and then applying IK all over again, putting pins on every foot/hand (one by one cause else the keyframes are messed up) and I still get arms or legs flipping out (sometimes without a keyframe, you can only see it when playing the animation, even deleting it doesnt get the flip out and the same flip is in the export file)

A lot of the times the pole vectors also ruin the animations, FK/IK conversion is absolutely not similar, it costs completely unnecessary time/energy to fix everything again and again over and over...

Been having this problem for months now, and it's been happening a lot more lately

Please let me know how to prevent/fix this Peter

UMotion Version:
v1.29
Unity Version:
2021.3.9f1
GOOD, I'M SATISFIED
Satisfaction mark by ytGameDevDave 11 hours ago
Not a bug

Hi Dave,

thank you very much for your support request.

I usually go through the cycle of exporting > importing  and tweaking fk and then applying IK all over again

Do you mean that every time you want to tweak your animation, you re-import it into UMotion? Please try to keep your UMotion project files and instead of re-importing your animation every time, just open the UMotion project file, tweak the animation and then export again. This keeps all the editing information and prevents small precision-loss from happening with every import/export cycle.

putting pins on every foot/hand (one by one cause else the keyframes are messed up)

IK Pinning uses the child-of constraint in the background. That means you have to be careful when using it, as changing the pinned state translates existing key frames from worlds space values to local space (if you do let UMotion do the conversion). This video gives you a great introduction in the common pit-falls when using the child-of constraint:

https://www.soxware.com/umotion-manual/ProLesson3.html

The manual goes into further details: https://www.soxware.com/umotion-manual/ChildOf.html

The child-of constraint is something you need to be very careful when using, otherwise you can get into troubles like the one you described. You need to be very aware of what it means to change the space of coordinates, otherwise you might end up in the child-of/pinning state not matching the corresponding coordinate space of the position/rotation key values thus resulting in wrong behaviour.

A lot of the times the pole vectors also ruin the animations, FK/IK conversion is absolutely not similar, it costs completely unnecessary time/energy to fix everything again and again over and over...

The FK --> IK conversion involves quite some guessing work by the algorithm. While the algorithm does it's best to try to generate good results, manual corrections can be necessary.

Please let me know in case you have some further questions. In case you have a specific situation where you think UMotion does not behave correctly, best would be to record a video that demonstrates the issue.

Best regards,
Peter