【问题标题】:How to align my world space with Vive Chaperone bounds?如何将我的世界空间与 Vive Chaperone 边界对齐?
【发布时间】:2023-03-11 06:02:01
【问题描述】:

我正在尝试使用 Unity 和 VRTK 为 HTC Vive 创建房间比例的 1:1 VR 体验。

我有一个 3m x 3m 的跟踪空间用于测试,并且在 Unity 中我创建了一个 3x3 的房间。然而,我的虚拟世界中的墙壁并不与 Play Area 伴侣边界平行——它们与伴侣相交。看看这张图片:

如何转换我的世界空间,使其始终与伴侣边界同步?

【问题讨论】:

  • 将耳机和控制器放在您创建的虚拟房间的中心
  • @MuhammadFaizanKhan 我认为当您设置VRTK_SDKManager 并在VRTK_SDKSetup 中选择SteamVR 时,VRTK 会注意头显的放置。我交叉检查了所有对象,所有变换都设置为 0。

标签: unity3d vrtk


【解决方案1】:

据我所知,如果 SteamVRController 位于层次结构的根部,则伴侣边界应始终以世界空间零坐标为中心并与世界轴对齐。你确定你没有把它作为另一个对象的孩子吗?

您还可以通过执行某些操作来检查跟踪区域的尺寸是否符合您的预期:

CVRChaperone chaperoneSystem = OpenVR.Chaperone;
bool success = chaperoneSystem.GetPlayAreaSize(ref m_sizeX,ref m_sizeZ);

【讨论】:

  • 我正在使用 VRTK 进行开发,它为我管理 SteamVR SDK。我确实尝试使用VRTK_DeviceFinder.PlayAreaTransform() 获取游戏区域大小,它将位置返回为(0, 0, 0),旋转返回为(0, 0, 0, 1.0)。所以我不确定出了什么问题。即使我得到了正确的伴侣变换,我该如何修复我的世界空间坐标?
猜你喜欢
  • 2013-04-21
  • 2020-02-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-14
相关资源
最近更新 更多