Search Issue Tracker

Fixed

Fixed in 2.3.1

Votes

1

Found in [Package]

2.3.0-pre.1

Issue ID

XRIT-48

Regression

No

[XR Interaction Toolkit] UI Poke interaction does not work properly when the non-default Canvas sorting order is set

Package: XR Interaction Toolkit

-

Reproduction steps:
1. Open the attached project "UIPokeBugRepro"
2. Go to Edit > Project settings > Project Validation and press fix on “[Oculus Quest Support] Oculus Quest Feature for Android platform is deprecated..”
3. Build and run on a Quest device
4. Try pressing both buttons

Expected result: Each button turns green after being pressed
Actual result: Only the right button turns green

Reproducible with: 2020.3.45f1, 2021.3.18f1, 2022.2.6f1, 2023.1.0b3, 2023.2.0a1

Reproducible with devices:
VLNQA00379, Oculus (Quest 2), Android 10, CPU: Snapdragon XR2, GPU: Adreno (TM) 650

Reproducible on: Windows 10 Enterprise 21H2

Notes:

* If both buttons don’t seem to work, try pressing them a couple of times. It’s quite hard to interact with them through the VR
* The issue seems to be in TrackedDeviceGraphicsRaycaster.PerformRaycasts. If the check for already interacting objects at the beginning of the function is bypassed by the sorting order difference, the "not currently interacting with anything" result for the higher priority canvas unconditionally overwrites the state for the lower priority canvas - even where it makes no sense to do so because the controller is not even close to the higher priority canvas.

  1. Resolution Note (fix version 2.3.1):

    We were able to find and fix 2 problems, the first being that you could not select any other UI with Poke when a dropdown was open. The other was that any change in the sort order (Order in Layer) for a canvas would prevent poke interaction on any other UI with a lower sort order value. This has been resolved in XRI v2.3.1.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.