Forum Discussion

🚨 This forum is archived and read-only. To submit a forum post, please visit our new Developer Forum. 🚨
diedetap's avatar
diedetap
Honored Guest
6 years ago

Hand tracking with custom model - fingers bending the wrong way

Hi There!

For the last couple of days I've been trying to figure out how to apply the Quest's hand tracking to a custom model. The OVR Custom Skeleton script seems to work great - but only for the right hand. The left hand bones are inverse resulting in the fingers move up when they should move down and left when they should be going right, which looks rather unpleasant. https://imgur.com/a/ZYV9iCb

As far as I understand the OVRCustomSkeleton.cs script is used to map the custom bones while OVRHand.cs is responsible for transforming the bones's rotation. I'm pretty sure line 164 - 177 is where I should be looking but this is where I get stuck, every attempt results in either nothing changing or everything breaking. 


OVRSkeleton.SkeletonPoseData OVRSkeleton.IOVRSkeletonDataProvider.GetSkeletonPoseData()

var data = new OVRSkeleton.SkeletonPoseData();

data.IsDataValid = IsDataValid;
if (IsDataValid)
{
data.RootPose = _handState.RootPose;
data.RootScale = _handState.HandScale;
data.BoneRotations = _handState.BoneRotations;
data.IsDataHighConfidence = IsTracked && HandConfidence == TrackingConfidence.High;
}

return data;


Any help would be much appreciated!

2 Replies

Replies have been turned off for this discussion