Yes, this is a well-known flaw in Maya's IK systems. As I believe Arun mentions above, if all the joints in your
"chain" are co-planar then all joints will lie in the IK resolution plane (also known as the IK Reference Plane).
When you apply a polevec constraint using an object in that plane the joints will not rotate.
However, "But if your joint having any rotations", or more likely,if you have a chain consisting of more than
2 joints whose translations and rotations are NOT in the same plane, the joints WILL rotate when an upvec is
applied -- unless you place the control object precisely within the IK's resolution plane . This, of course,
is difficult to do with complex joint chains.
Arun, your method of finding the resolution plane is good. Finding the IK plane for more complex chains might
pose a problem for your method since it relies on the translations of the joints in the chain and not the IK's
resolution plane itself.
When you select an IK handle the Rotation Disc, Twist Indicator and Reference Plane Indicator become visible at the
first joint in the chain. I have always wondered if one could derive the plane from the Plane Indicator. That would
make placing pole vector controls easy.
Note that this problem did not exist for Softimage3D. If you applied an upvector control to an IK that was not in the
resolution plane the constraint was created with an offset which preserved the pose of the bones in the chain. With
XSI that functionality does not exist (as far as I know), but there is a way to see the plane in the viewport as a triangle.
You can place your constraint object very close to the apex of this triangle which will minimize the bone rotations created
when the Chain Up Vector is applied.
Anyone out there know a more precise way to place Chain UpVecs in XSI?
When you select an IK handle the Rotation Disc, Twist Indicator and Reference Plane indicator become visible at the
first joint in the chain. I have always wondered if one could derive the plane from the Plane Indicator. That would
make placing pole vecotr controls easy.
Note that this problem did not exist for Softimage3D. If you applied an upvector control to an IK that was not in the
resolution plane the constraint was created with an offset which preserved the pose of the bones in the chain. With
XSI that functionality does not exist (as far as I know), but there is a way to see the plane in the viewport as a triangle.
You can place your constraint object very close to the apex of this triangle which will minimize the bone rotations created
when the Chain Up Vector is applied.
Anyone out there know a more precise way to place Chain UpVecs in XSI?
