Mesh IK issues, IK targets, and applying rotation

I’m working on a character in Blender (using 2.5, yay alpha) for a game and I wanted to get an elbow target going for my arm IK so I don’t hopelessly get the arm rotating in the wrong direction all the time. I’ve successfully done this for a leg, so I figured “piece of cake, this will make my life easier.” Sadly adding a pole target has the shoulder crimping up something fierce. Changing the angle so that it points at the elbow target properly works, and I can make it so that everything (bone wise) works fine, however the problem comes when I try to do a simple hand on hip pose. The upper arm bone is also rotating, and this is causing the mesh at the shoulder to rotate as well, causing horrible crimping in the front of the character.


If I rotate the lower arm bone around an axis by 90 degrees in pose mode it points at the elbow target, the upper arm bone doesn’t rotate at all, and I can do any pose I want. This is the solution I’m looking for. However if I select the whole mesh and clear rotations (I’m lazy and don’t want to select or unselect bones individually) it clears that too, and I’m back to the problem where either the arm is twisted horribly in the default pose and I need to rotate it again manually, or I need to use the pole angle to make it work again.

If I try to apply the rotation of the bone in pose mode (which seems logical), the arm refuses to do IK properly unless I again manually rotate the lower arm bone (which seems to make it wig out uncontrollably, like it’s not even paying attention to the elbow target). I can’t apply the rotation in edit mode because then the bone isn’t rotated properly, and rotating it there at all will cause it to stretch and move the ends of the connected bones.

Anyone got any ideas? Is there another way I can make it so that the arms don’t buckle oddly when moving the IK handles around, and/or make it so that the upper arm doesn’t roll completely around, only rotate and roll slightly like it should in a real arm?

Unless your arm is bearing weight or, for example, resting on something like a desk or wall (in which case, incidentally, it’s bearing weight), you should consider animating it with FK.

If you’re set on using IK for the arms, make sure that you’ve at least created your rest pose with a little bit of bend in the right directions so the IK algorithm knows which way to move stuff, and provide it additional information by setting the IK Limits properly for bone rotation (locking Z and Y on the lower arm, etc.)