The open source OpenXR runtime
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

steamvr_drv: Use the correct grip name for XRT_DEVICE_SIMPLE_CONTROLLER

Previously, xrt_device_get_tracked_pose was called with
XRT_INPUT_GENERIC_HEAD_POSE when getting the pose of a SIMPLE_CONTROLLER device.

When using the 'remote' driver, this lead to two warnings per frame [1] and more
importantly the device pose wasn't being read. I haven't tested this with any
other drivers, but it appears that at least the QUERTY driver likely has an
issue with this too, as it uses the input name to determine whether to return
the HMD or controller pose.

[1] ERROR [r_device_get_tracked_pose] Unknown input name

+2
+2
src/xrt/state_trackers/steamvr_drv/ovrd_driver.cpp
··· 581 581 grip_name = XRT_INPUT_HYDRA_POSE; 582 582 } else if (m_xdev->name == XRT_DEVICE_TOUCH_CONTROLLER) { 583 583 grip_name = XRT_INPUT_TOUCH_GRIP_POSE; 584 + } else if (m_xdev->name == XRT_DEVICE_SIMPLE_CONTROLLER) { 585 + grip_name = XRT_INPUT_SIMPLE_GRIP_POSE; 584 586 } else { 585 587 ovrd_log("Unhandled device name %u\n", m_xdev->name); 586 588 grip_name = XRT_INPUT_GENERIC_HEAD_POSE; // ???