Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ExtendedFingerDetector doesn’t work with OpenXR #1206

Closed
Ronan-V opened this issue Jun 29, 2022 · 6 comments
Closed

ExtendedFingerDetector doesn’t work with OpenXR #1206

Ronan-V opened this issue Jun 29, 2022 · 6 comments

Comments

@Ronan-V
Copy link

Ronan-V commented Jun 29, 2022

Open XR Leap Provider and ExtendedFingerDetector.cs with the Unity plugin v5.11.0.

The issue is that ExtendedFingerDetector doesn't seem to work with the OpenXR provider while it does with the Leap XR Service Provider. All fingers are detected as extended whatever their position.

To reproduce

  1. Open the example scene Capsule Hands (OpenXR).
  2. Add Extended Finger Detector script to any hand Capsule Hand Left and/or Capsule Hand Right.
  3. Check detector's activation state with Gizmos or On Activate() and On Deactivate() events.
@MaxPalmer-UH
Copy link
Contributor

Unfortunately the OpenXRProvider does not support a few features that are provided through the LeapC interface.

The OpenXR Leap Provider does not currently support the following hand properties (and will return fixed values):
• Hand and Finger: FrameId
• Hand: Confidence
• Hand: GrabAngle
• Hand and Finger: Id & HandId will always return 0 and 1 for the left and right hand respectively
• Hand and Finger: TimeVisible
• Finger: IsExtended

@MaxPalmer-UH
Copy link
Contributor

MaxPalmer-UH commented Jun 29, 2022

I'll check these notes are in the documentation and what the plans are to support them.
Update: they are there.

@MaxPalmer-UH
Copy link
Contributor

@Ronan-V we will begin to address some of these missing capabilities using the OpenXR backend in the upcoming sprints. The reason why some features are absent is that they rely on data from the tracking service which is exposed by LeapC but is not exposed by the OpenXR APIs/layers/extensions. This data will have to be calculated within the plugin.

@MaxPalmer-UH
Copy link
Contributor

This is now being worked on

@MaxPalmer-UH
Copy link
Contributor

MaxPalmer-UH commented Jul 15, 2022

@Ronan-V this (and a few other OpenXR missing features) should be going through QA next week and will hopefully make it into 5.13.0.

• Hand and Finger: FrameId - YES
• Hand: Confidence - NO *
• Hand: GrabAngle - YES - but to be deprecated
• Hand: GrabStrength - YES
• Hand and Finger: Id & HandId will always return 0 and 1 for the left and right hand respectively - YES
• Hand and Finger: TimeVisible - YES
• Finger: IsExtended - YES

'*' - Hand confidence is not actually fully supported in Gemini (w.r.t Orion).

@MattGrayUL
Copy link
Contributor

MattGrayUL commented Jul 21, 2022

Closing as the above have now been released as part of OpenXR 1.0.0-pre-7 alongside Unity Plugin 5.13.0 🙂

https://github.com/ultraleap/UnityPlugin/releases

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants