We need a way to control on a per avatar basis the hand-tracking for the knuckles. A lot of avatars just don't work well with the default mechanim muscle values the tracking system is using to pose the hand. We should not be forced to mutilate our skeletons and re-do our weight-painting to get this to work (no, moving the root of the thumb's metacarpal from the wrist to the middle of the hand is not a valid fix, its straight up anatomically incorrect).

What I propose is a component we can add to an avatar that tells it the min/max stretch for each finger joint as well as a min/max spread for the thumb and the default spread for each finger. Since the knuckles only give us curl information for each finger, just interpolate between the min/max stretch value for all the joints in each finger as the curl goes from 0 to 1 (or whatever range it takes). This should give us a way to get the finger tracking working without having to mangle our avatar's skeleton.

Yes, I know this solution will probably cause the avatars' fingers to no longer line up as well with the player's real finger positions, but honestly I don't think it will be that immersion breaking.