Search Issue Tracker
By Design
Votes
0
Found in [Package]
3.0.5
Issue ID
XRIT-175
Regression
No
[Quest] UI registers action at 0.5 Press Point value when it's set to a different value
Reproduction steps:
1. Open the attached project "ReproProj"
2. Open the “/Assets/Samples/XR Interaction Toolkit/3.0.3/Starter Assets/DemoScene.unity” Scene
3. Double click “Assets/Samples/XR Interaction Toolkit/3.0.3/Starter Assets/XRI Default Input Actions.inputactions“ to open XR Default Input Actions window
4. In the Action Maps section, select “XRI Right Interaction”
5. In the Actions select “UI Press”
6. In Action Properties, observe that “Press Point” is set to 0.1
7. Enter the Play Mode
8. Go to “Test Modal Window” UI element
9. Open XR Interaction Debugger (Window > Analysis > XR Interaction Debugger)
10. Press anything on the Oculus Controller
11. Expand “Oculus Touch Controller OpenXR”
12. Find the blue Button with the text “Confirm”
13. Observe the XR Interaction Debugger window, while slowly pressing the trigger button of the Oculus controller on the button with the text “Confirm”
14. Observe the Console window, to see when the Button registers an action
Expected result: The Button registers action when the trigger value is 0.1
Actual result: The Button registers action when the trigger value is 0.5
Reproducible with: 3.0.0 (2022.3.40f1), 3.0.5 (2021.3.41f1, 2022.3.40f1, 6000.0.13f1)
Reproducible on:
Windows Standalone Player (VLNQA00379, Oculus (Quest 2), Android 10, CPU: Snapdragon XR2, GPU: Adreno (TM) 650)
Play Mode (VLNQA00379, Oculus (Quest 2), Android 10, CPU: Snapdragon XR2, GPU: Adreno (TM) 650)
Not reproducible with:
Android Player (VLNQA00379, Oculus (Quest 2), Android 10, CPU: Snapdragon XR2, GPU: Adreno (TM) 650)
Testing environment: Windows 10 Enterprise 21H2
Not reproducible on: No other environment tested
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Can not navigate through the Scene view when using a drawing tablet
- Crash on EditorDisplayDialogProc when opening Dialog box containing buttons with unusually long labels
- Crash on AsyncWriteImageToR2dFile when baking lightmaps using custom parameter with 16x Anti Aliasing samples
- Application Cloud Connection Id is incorrect when using Build Profile with Player Setting Overrides.
- [Android] [GameActivity] UI is unresponsive when Application Entry Point is set to GameActivity
Resolution Note:
This is expected with the Input Action binding type that is selected. By default, when using a Button type Input Action combined with the button control type (TriggerButton in this case), the underlying platform is responsible for telling us whether the value should be 0 or 1 (no in-between values). This is to save on a little bit of calculations, since the underlying platform is doing the work for us. If you want to change the press point, you will need to change the binding to a control type that passes the value for the analog button, in this case it would be "Trigger" instead of "TriggerButton".
Let's see how to do this with the UI Press and change the press threshold to 0.1. Since you want to override the platform behavior with a custom Interaction, you would pick the specific binding you want to change it for (OpenXR XR Controller TriggerButton for example). Then add the Press Interaction as you did before. Uncheck the Default checkbox and change the Press Point to 0.1. To make this function as expected, you will then want to change the Binding Path itself from "TriggerButton [RightHand XR Controller]" to "Trigger [RightHand XR Controller]". You can look at the binding on the UI Press Value action to see the proper binding path for clarity.