I've set up the Leap Motion on the Headset of the HTC Vive in a Unity scene and everything is working fine, except for an inaccuracy of tracking in Z-direction (depth/width) of the hands. So if I keep my hands still or in the exact same position, and only move with my head (Vive Camera) towards the hands or go away again (translation in Z-direction), the Leap hand models are not staying in their position. They are also slightly moving in Z-direction. This is a problem, because if I want to touch something a bit further away from me (for example with the arms stretched out), the hand models are visualised closer, than my real hands are. So the objects I want to touch appear too far away.
I can demonstrate you the problem with my hands holding the HTC Vive Trackers, which are tracked and visualised correctly in my Unity scene.
This picture is captured with the hands very close to the Vive and Leap:
Everything seems correct:
And that picture shows the hands stretched out or further away from the Vive and Leap:
Hand model should also be further away, as it is not on the Vive tracker anymore.
So there seems to be a dynamic offset, that is getting bigger, the more the distance from my hands to the Vive/Leap gets.
I am aware of the Leap XR Service Provider, but I only can find static offsets, which are not solving the problem with that changing dynamic offset.
I think this is a common problem, but couldnt find any solutions. Can I fix this problem or is there a way to access the Hand Model Position dependent on the distance to the Leap Device for adjusting it?