想知道是否有人可以提供帮助。
因此,我尝试使用 OpenVR 在 HTC 上重置“世界”的原点。例如,当我必须将 HMD 与屏幕等对齐时,在房间设置期间设置的 (0, 0, 0) 点。
我想知道这是否可以通过代码来完成,如果可以的话,有人可以指出我正确的方向吗?
我发现 oculus 的ovr_RecenterTrackingOrigin()
功能似乎可以满足我的需求。
但是 HTC 有没有等价物?我想重置原点,因为我被困在同一个地方,并且如果我远离最初的“世界”原点,我希望有一个校准新原点的选项。
我使用的python脚本来自:https ://github.com/uts-magic-lab/htc_vive_teleop_stuff/blob/master/scripts/vive_tf_and_joy.py
& 从这部分代码中获取位置:
poses = poses_t()
vrsystem.getDeviceToAbsoluteTrackingPose(
openvr.TrackingUniverseStanding,
0,
len(poses),
poses)
now = rospy.Time.now()
transforms = []
# Hmd is always 0
matrix = poses[0].mDeviceToAbsoluteTracking
hmd_pose = from_matrix_to_transform(matrix, now, "world", "hmd")
transforms.append(hmd_pose)
如果有人有任何提示,我将非常感激。