Home Website Youtube GitHub

Match IK / FK sets the Pole vector to the elbow


I just noticed when running matching fk/ik that the pole vector control is set to the elbow position instead to the default 0.0.0 position. Is this intentional? It happens equally to arms and legs and although it not breaking anything is a bit of a hassle having to remove the key if animated or reset to 0 the pole vector value to get it back to the default position.


Yes, that behavior is what is intended. But I’ve had some conversation with Jerome about to potentially improve this.

What I am currently experimenting with, is to read or store the distance of the neutral pose of the pole vector as an attribute when building the rig, and then use that as an overriding distance, instead of calculating it. When you calculate it on the fly, it really depends on the stretch or reverse of the limb.

Below is a link to the code I am working on. I’m still testing it, but so far it seems to work. Except it fails (flips to the wrong side or goes to the middle) if you use reverse, or if the limb is stretched perfectly straight. So I still need to solve that before I feel comfortable sending a PR.

In this code, there is a new function based off of this tweet:

calculate_pole_vector(p1, p2, p3, poleDistance=None)

poleDistance is an overriding distance. And I use the parents of the controls to read a neutral distance.

This is also not tested very well. And it might depend on the limb component that is being used. AGAIN, I have not finished testing this. But it seems to work with the picker code so far.


Thank you Chris! ISorry didn’t see that already posted about it.

Hi @chrislesage

Thanks for the gist. I will check it and if is working add it in the main branch . We also have this issue :stuck_out_tongue:

1 Like

Yeah I have lots of stuff almost ready to submit. One day I’ll suddenly find time, and spam you with 50 PRs. :sweat_smile:

This weekend I’ll try and fix the problem so this pole vector code works with straight, scaled and reversed limbs too.


A post was split to a new topic: Pole vector position problem when FK is default