cancel
Showing results for 
Search instead for 
Did you mean: 

Hand Tracking skeleton doesn't update

thomukas1
Explorer
Hi, so i managed to get my hands tracked with Oculus Link inside Unity, but I noticed that, even though the mesh displays my hands correctly, the actual bones are not getting updated and my finger pointer is always off. How do I make the bones update with my hands meshes? 

By the way, one weird thing. If I put a debug.log inside skeleton bones update section, the hands start tracking a bit worse and more laggy (because of millions of debug.logs) but then the bones are following my hands every frame..

Thanks for help.49s2e4c915er.png
5 REPLIES 5

thomukas1
Explorer
SOLVED IT. Its because of fixed timestep. I had it set at 0.02. The lower i went, the better synchronization of mesh and collliders i achieved. I ended up using 0.01.

matthieupoyade
Explorer
Thanks, you save me a headache  🙂

laurisD
Protege

You should not reduce your timestep, it will consume a lot of performances in your app. The best way is to changes lines 420 to 430 in OVRSkeleton.cs and use this instead : 

if (capsuleGO.activeSelf)
{
capsule.CapsuleRigidbody.gameObject.transform.position = bone.position;
capsule.CapsuleRigidbody.gameObject.transform.rotation = bone.rotation;
}
else
{
capsuleGO.SetActive(true);
capsule.CapsuleRigidbody.gameObject.transform.position = bone.position;
capsule.CapsuleRigidbody.gameObject.transform.rotation = bone.rotation;
}

Ohh, wow. It works. Thanks!

Thanks for the Kudos, can you mark my answer as "Solution" ? I will help me as I helped you 😉