【问题标题】:Access the OpenVR chaperone (Play area boundary box) without having SteamVR无需 SteamVR 即可访问 OpenVR 伴侣(游戏区边界框)
【发布时间】:2019-09-22 17:49:26
【问题描述】:
我正在尝试在不依赖 SteamVR 的情况下访问我的 VR 项目的边界框/Chaperone。我正在尝试构建一个尽可能原生于 Unity 的框架。
在 SteamVR 中可以这样写:
Valve.VR.OpenVR.Chaperone.ForceBoundsVisible(true);
// or
Valve.VR.OpenVR.Chaperone.ForceBoundsVisible(False);
我的问题是如何仅使用 OpenVR 包而不是 SteamVR 插件来做类似的事情。
谢谢
【问题讨论】:
标签:
unity3d
virtual-reality
boundary
steamvr
【解决方案1】:
您可以使用OpenVR SDK。
如果您使用的是 C#,则在 headers\openvr_api.cs 处有一个包装器。
首先你必须加载库 (openvr_api.dll) 并像这样初始化它:
var error = EVRInitError.None;
OpenVR.Init(ref error, EVRApplicationType.VRApplication_Background)
那么就用同样的方法来使用吧
OpenVR.Chaperone.ForceBoundsVisible(true);
您还可以从 Steam 的config 文件夹中读取chaperone_info.vrchap 和steamvr.vrsettings。这些 json 文件包含有关所有 Universe 碰撞边界的信息。