Search Issue Tracker
Fixed
Fixed in 2.3.1
Votes
1
Found in [Package]
2.3.0-pre.1
Issue ID
XRIT-46
Regression
No
[XRIT] The XR Interactor Reticle Prefab rotates in the Z-direction when it rotates correctly on the Y axis
Steps to reproduce:
1. Create a new XR project
2. Install XR Interaction Toolkit 2.2.0 with the package manager
3. Also install Samples "Starter Assets"
4. Import the attached custom Package "XR Ray Interactor"
5. Open the "Assets/Samples/XR Interaction Toolkit/2.2.0/Starter Assets/DemoScene.unity"
6. Enter Play Mode and point the right controller at each UI
Expected results: The reticle will face the UI, but it will not rotate in the z-direction
Actual Results: The reticle will face the UI, but it will also rotate in the z-direction
Reproducible on: XRIT 2.2.0 - 2.3.0-pre.1 (2020.3.45f1, 2021.3.19f1, 2022.2.8f1, 2023.1.0b5, 2023.2.0a4)
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
- Warning 'Unable to find player assmebly' is thrown when building some Project Templates
- ArgumentOutOfRangeException when manipulating the Project Settings search bar
- [Linux] Touch freezes in Player when any mouse button is clicked
- UnityEngine.Rendering.Volume.OnEnable() is called twice before OnDisable() creating multiple copies of the same volume when a volume is enabled right after Domain Reload when entering Play Mode
- Hinge Joint transforms are reset when toggling the "useMotor" property
Resolution Note (fix version 2.3.1):
Fixed the issue where the reticle would rotate as you moved when it was aligning with surfaces. Fixed so that on non-horizontal surfaces, this aligns the y-axis of the reticle with the surface normal and project a vector to align the z-axis of the reticle prefab to always try to face up relative to the XR origin transform.up or Vector3.up if the XR Origin tranform is null. On horizontal surfaces it aligns the y-axis with the normal and the z-axis in the direction of the interactor forward (so basically facing away from the from user and interactor).
Fixed another related issue when AlignPrefabWithSurfaceNormal is false, the reticle would originally rotate around as you moved. It now aligns the y-axis of the reticle towards the interactor and keep the z-axis of the reticle facing world up.
There was a last related issue when you hit the back of a UI element, the normal would be facing the direction of the UI elements forward vector, so it would face away from the user. In this case I flipped the normal to face the user from the back-side.