Search Issue Tracker

Fixed

Fixed in 2.5.4, 3.0.0

Votes

0

Found in [Package]

2.5.2

3.0.0-pre.1

Issue ID

XRIT-116

Regression

No

[Priority_NoRepro] XRDirectInteractor::EvaluateSphereOverlap not using result of SphereCast after first frame

Package: XR Interaction Toolkit

-

Reporting on behalf of customer.

In XRDirectInteractor, line 257 has an apparent copy-paste error (from line 241):

m_StayedColliders.Add(m_OverlapSphereHits[i]);

When it should be something like this:

if (m_SphereCastHits[i].collider)
{
m_StayedColliders.Add(m_SphereCastHits[i].collider);
}

The enclosing method EvaluateSphereOverlap() has two different branches where it does a sphere overlap in the first frame or otherwise a sphere cast for following frames. However, in the latter case it wrongly doesn't use the result from the sphere cast but the now quite old result from the sphere overlap done in the first frame.

To get symptoms of this bug, you need to configure the XRDirectInteractor like this:

Improve Accuracy With Sphere Collider = true
Select Action Trigger = State

Please send to XR Interaction team.

Note: No CQA testing was carried out.

  1. Resolution Note (fix version 3.0.0):

    Issue resolved and backported to 2.5.X.
    In 3.0 however, the NearFarInteractor makes the Direct Interactor unnecessary.

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.