Community
Maya Animation and Rigging
Welcome to Autodesk’s Maya Forums. Share your knowledge, ask questions, and explore popular Maya animation topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

HumanIK Retargeting - Strange limits on finger rotation when bending

1 REPLY 1
Reply
Message 1 of 2
albin.nocode
480 Views, 1 Reply

HumanIK Retargeting - Strange limits on finger rotation when bending

Hello!

 

Currently on Maya 2020.4, Windows 11.

 

We've been using HumanIK with custom rigs as our retargeting pipeline for getting mocap data onto our characters, and it's been working pretty well so far. However, we wanted to improve the retargeting result of the fingers, especially when retargeting between different characters with slightly different bind poses for the hands. We tried editing our Stance poses of all the characters to better match each other, trying to straighten the fingers into the same approximate pose.

 

When we were testing out the new retargeting results, we noticed a strange behavior when mapping one HumanIK character to another in regards to the fingers. There appears to be some kind of limit on how much the finger joints can rotate in their primary axis, i.e how much they are allowed to bend. This only appears to affect the destination rig, as there are no limits on the skeleton or rig itself used in the retargeting operation. To demonstrate this, we created a simple test scene with the Human IK Example character (Dummy) available from the Human IK window, also to confirm that this was not just an issue with our skeletons and rigs. Please see the gif below for an example:

 

hik_retarget_finger_limits_smaller.gif

 

 

 

 

 

 

 

 

As you can see, the Blue hand is driven by the Red hand as it's source (both are imported from the same saved character file, and both are just a defined skeleton, no rig or custom rig attached). The fingers can seemingly only bend "down" in a 180 degree arc, they can not be rotated "up", even if the source character does. This doesn't seem to apply to the first joint in the finger, so Thumb1, Index1, etc, only the following joints have this limitation, from the second joint and down.

 

It also seems to apply to a hard coded axis, where the thumb bends on the Y-axis, but the rest of the fingers use the Z-axis. This is another issue we ran into, as the thumb joints in our skeleton match the other fingers, using the Z-axis to bend, but this limit still applies to the Y-axis meaning our thumbs can bend freely, but they can't rotate side to side. This means that some poses are impossible to reach, which was our first clue to finding this issue.

 

I've tried searching for a setting to control this limit, but there doesn't appear to be anything that's supposed to limit the rotation of the fingers on any of the HIK nodes in the scene. The character definition has all finger rotation limits unlocked (and I tried setting the limits to -359 to 359 just to test it, but no change). I am starting to suspect that this is an issue in the HIK retargeting solver, meaning it's not in our power to change this behavior, which is a big issue.

 

Has anyone else encountered the same issues, and found a workaround or a fix for it? Maybe there is a setting hidden somewhere where I haven't looked, or maybe there's a way to change the solver from the HIK plugin somehow.

I've attached the maya file I used to test this in the above gif with the two dummy characters if anyone wants to test it to see if they get the same results. Otherwise it's easy to setup yourself using the provided Human IK Examples available in Maya.

 

Thanks!

Labels (6)
1 REPLY 1
Message 2 of 2
albin.nocode
in reply to: albin.nocode

I just wanted to add a small discovery I just made, it actually only seems to affect the middle joint of each finger, not the start or end joints. Maybe this is part of the IK solver of the fingers, if I turn on the reach of the finger tip and rotate the finger up, it will bend from the start, but the middle joint will never rotate negatively, only the start and the last joint.

Hoping someone has some insight, otherwise my plan is to remove fingers from the HIK definition and drive them with constraints instead. Obviously not ideal if I want to take advantage of the other features of the HIK solver, like mirroring and such.

albinnocode_0-1667817861196.pngalbinnocode_1-1667817886379.png

 

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report