The open source OpenXR runtime
0
fork

Configure Feed

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

st/steamvr_drv: Use xrt_device_get_view_poses

authored by

Christoph Haag and committed by
Jakob Bornecrantz
b81ab3f0 49f95164

+6 -3
+6 -3
src/xrt/state_trackers/steamvr_drv/ovrd_driver.cpp
··· 755 755 float ipd_meters = 0.063; 756 756 struct xrt_vec3 ipd_vec = {ipd_meters, 0, 0}; 757 757 758 - for (int view = 0; view < 2; view++) { 759 - xdev->get_view_pose(xdev, &ipd_vec, view, &m_view_pose[view]); 760 - } 758 + timepoint_ns now_ns = os_monotonic_get_ns(); 759 + 760 + //! @todo more than 2 views 761 + struct xrt_space_relation head_relation; 762 + xrt_device_get_view_poses(xdev, &ipd_vec, now_ns, 2, &head_relation, m_fovs, m_view_pose); 761 763 762 764 //! @todo more versatile IPD calculation 763 765 float actual_ipd = -m_view_pose[0].position.x + m_view_pose[1].position.x; ··· 803 805 float m_flDisplayFrequency = -1; 804 806 float m_flIPD = -1; 805 807 808 + struct xrt_fov m_fovs[2]; 806 809 struct xrt_pose m_view_pose[2]; 807 810 808 811 bool m_poseUpdating = true;