PDA

View Full Version : Pole Vector causing rotations on joint chain


szaharakis
04-12-2007, 07:44 PM
I need some help with Pole Vectors. I've setup a FK/IK switch arm and I am trying to add in the Pole Vector on the IK arm now that I have finished it. What I have noticed is as soon as I throw the PV in, it causes rotations on my shoulder and forearm joints, along with the arm moving slightly.

Here are the before and afters on the shoulder joint rotations:

BEFORE http://www.stevenzaharakis.com/temp/shoulder1.jpg AFTER http://www.stevenzaharakis.com/temp/shoulder2.jpg

Here is the layout of the joint chain in case it helps......

FRONT

http://www.stevenzaharakis.com/temp/front.jpg

TOP

http://www.stevenzaharakis.com/temp/top.jpg

Any ideas or help as to what am I doing wrong? Is this always expected and is there anyway I can position that Pole Vector to the 'magic' spot where it wont cause rotations on any joints? Thanks.

LucentDreams
04-12-2007, 09:44 PM
create a locator or whatever you are using as your pole object. point and orient constrain it to the first joint in the chain then delete the constraints. now simply pull the object strait out on the axis your solving plane is on.

the whole idea of the pole is that it controls the rotation of that plane so typically its best to have it aligned with your chain before applying it, or apply it before binding so that you cna pose the skeleton right first.

szaharakis
04-12-2007, 11:44 PM
create a locator or whatever you are using as your pole object. point and orient constrain it to the first joint in the chain then delete the constraints. now simply pull the object strait out on the axis your solving plane is on.

the whole idea of the pole is that it controls the rotation of that plane so typically its best to have it aligned with your chain before applying it, or apply it before binding so that you cna pose the skeleton right first.

My chain is as follows...

shoulder > elbow > forearm > wrist

I have tried point & orient constraining the locator to the elbow... and then creating the pole vector after moving it back. Rotations still pop up on the shoulder.

I have also tried point & orient contraining on the shoulder, since you mentioned to the first joint in the chain (though I don't see why you would to the shoulder). It still receives rotation values.

Can anybody help? Is it because the joints on my chain don't lay in a straight line that I get these rotation values?

LucentDreams
04-13-2007, 03:26 AM
if your locator is properly aligned to your first joint (in this case the shoulder) then whichever axis is the up vector is the axis you can move the locator along. then you know the locator is aligned to the rotation plane and when you set up the pole vector, it should maintain its current angle. Only reason i can think of for this not to work is if your joints weren't properly aligned in the first place or you've misunderstood my explanation Having a staight chain instead of pre bent, won't make much difference, the idea behind a polvector is it controls the angle of the solving plane for the IK,or in simpler terms it controls where the elbow points. since your limb is already bent it should be able to see where the elbow is.

Heck if you really need simply position constraint it to the elbow, delete the constraint and apply the upvector is shouldn't move, if it is then you never aligned your joints properly to begin with. The problem with doing it this way is then the pole is in the exact same spot as the elbow, you'll need to pull it away, but unless your locator is aligned to your solving plane, it going to cause your elbow to move.

szaharakis
04-13-2007, 07:21 AM
All my joints are oriented correctly... I'm not sure what I am doing wrong or misunderstanding. I've done this plenty of times but never had rotation values pop up this extreme.

Would you or anyone else happen to have some free time to take a quick look at my file and possibly explain what is wrong? It's in Maya, and I've left it without the pole vector attached so it can be seen. I would appreciate any help. If not, thanks for at least responding.

-Steve

szaharakis
04-15-2007, 02:43 AM
anyone at all? :)

szaharakis
04-16-2007, 12:20 AM
Well I've concluded my rotations are happening only when I place the elbow joint higher or lower than the shoulder joint. When I place them all in the same axis left to right there is no rotation value placed on the shoulder after creating a pole vector constraint.

If anyone can suggest how to fix that, let me know. I will just have to place the joints directly across each other for now.

CGTalk Moderation
04-16-2007, 12:20 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.