Hello there!
I am currently trying to create my first demo with the Leap Motion in Unity, where users can grab capsules and press a button on top of them with the same hand. Unfortunately, no combination of grasp and contact worked for my purpose, and I was forced to implement a simil-anchor structure that allows those capusles to be attached to the hand with a simple gesture (thumb up and 4 fingers closed, similar to the ok gesture).
After experimenting for some days I can say that I don't quite understand the way data is make accessible to programmers, especially relative to coordinates and finger positions.
After digging a lot in the documentation, I found two different ways to access finger positions:
1) Using the RiggedHand component, I can access FingerModel references, and from there directly access the Finger's position in world coordinates and many other informations that I might need to make my calculations.
2) By accessing the Finger instances from the Hand classes. This second method seem to require way more work to obtain the same data, and methods such as TipPosition can be converted in world space coordinates only relative to the LeapHandController, not to the unity World space.
I am quite lost here, even though I can easily access the RiggedHand by reference in my component, I believe there must be something I am missing from the Hand class. What am I doing wrong? Also, how do I derive the TipPosition in world coordinates from the LeapHandController system?
I know this post could be a little confused, but I am new to the Leap and I am doing my best to understand it