Search Issue Tracker

Fixed

Fixed in 1.6.3, 1.7.1

Votes

0

Found in [Package]

1.5.0

1.6.0

1.7.0

Issue ID

XRHB-86

Regression

No

No guards in gesture detection when adding 'Unspecified' to XRFingerShapeType

Package: XR Hands

-

How to reproduce:
1. Open the attached project “IN-108301”
2. Enter the Play mode with hand tracking
3. Point a finger in front of you
4. Observe the console

Expected result: No exceptions are thrown in the console
Actual result: Exceptions are thrown in the console $"Finger shape type

{target.shapeType}

is invalid for finger shape target condition."

Reproducible with: 1.6.0(6000.1.11f1)

Reproducible on: Windows 11 Enterprise
Not reproducible on: No other environments tested

Reproducible on devices:
Oculus Quest 3 (Quest 3), CPU: Snapdragon XR2 Gen 2 (SM8550), GPU: Adreno (TM) 740

Note: CQA was not able to reproduce this issue

 

Full error:

2025/08/04 09:22:37.968 18453 18472 Error Unity ArgumentOutOfRangeException: Specified argument was out of the range of valid values.
2025/08/04 09:22:37.968 18453 18472 Error Unity Parameter name: Finger shape type Unspecified is invalid for finger shape target condition.
2025/08/04 09:22:37.968 18453 18472 Error Unity   at UnityEngine.XR.Hands.Gestures.XRFingerShapeCondition.CheckCondition (UnityEngine.XR.Hands.XRHandJointsUpdatedEventArgs eventArgs) [0x00000] in <00000000000000000000000000000000>:0 
2025/08/04 09:22:37.968 18453 18472 Error Unity   at UnityEngine.XR.Hands.Gestures.XRHandShape.CheckConditions (UnityEngine.XR.Hands.XRHandJointsUpdatedEventArgs eventArgs) [0x00000] in <00000000000000000000000000000000>:0 
2025/08/04 09:22:37.968 18453 18472 Error Unity   at UnityEngine.XR.Hands.Gestures.XRHandPose.CheckConditions (UnityEngine.XR.Hands.XRHandJointsUpdatedEventArgs eventArgs) [0x00000] in <00000000000000000000000000000000>:0 
2025/08/04 09:22:37.968 18453 18472 Error Unity   at UnityEngine.XR.Hands.Samples.GestureSample.StaticHandGesture.OnJointsUpdated (UnityEngine.XR.Hands.XRHandJointsUpdatedEventArgs eventArgs) [0x00000] in <00000000000000000000000000000000>:0 
2025/08/04 09:22:37.968 18453 18472 Error Unity   at UnityEngine.Events.UnityEvent`1[T0].Invoke (T0 arg0) [0x00000] in <00000000000000000000000000000000>:0 
2025/08/04 09:22:37.968 18453 18472 Error Unity   at

  1. Resolution Note (fix version 1.7.1):

    The 'Unspecified' value is now handled correctly

  2. Resolution Note (fix version 1.6.3):

    The 'Unspecified' value is now handled correctly

Comments (1)

  1. MyUsername1988

    Dec 05, 2025 11:43

    No, the case is not handled correctly. If the shape is Unspecified, any finger position should be valid, the case should be handled with a "continue", not a "return false". This is even worse because the XR Hand Shape Editor now force to specify one or more conditions to every finger (and I think it's a poor idea), so the only work around, if you want a shape that does not use every fingers, is to provide a curve with a threshold of 1 for it to succeed...

Add comment

Log in to post comment