Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Question Why doesn't InputTracking.GetNodeStates() return XRNode.HardwareTrackers anymore?

Discussion in 'VR' started by Charlicopter, Jan 18, 2023.

  1. Charlicopter

    Charlicopter

    Joined:
    May 15, 2017
    Posts:
    125
    InputTracking.GetNodeStates does not return states for Vive Trackers; it only returns controllers and the HMD.

    I have a library that was working before I implemented OpenXR and the New Input System.
    I used InputTracking.GetNodeStates(x) to parse through all the connected devices and sort them with an intake method in Update(). I wrote the library so that I can use heuristics to determine what role the Vive Tracker is supposed to be, instead of the "held in hands" / "feet" / "camera" assignments, etc. In my use case, the trackers can be attached in any order, and doesn't depend on making sure that each unique tracker is always associated with the same part of the body whenever they are turned on.

    Since implementing OpenXR and the New Input System, this has ceased to work.

    Is there anything on the horizon that will return this Vive Tracker capability to the UnityEngine.XR native libraries?
    It seems pretty central to the way things are supposed to work, but I'm a little nervous that the mechanism has been abandoned. I'm willing to wait, but I want to make sure I'm not waiting for something that will never come.
     
    Last edited: Jan 18, 2023