问题标签 [openvr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
942 浏览

c++ - 如何创建和分发 SteamVR 仪表板覆盖

要完全清楚。这个问题是关于 SteamVR 仪表板覆盖的,而不是常规的覆盖。

我最近一直在玩 C++ SteamVR SDK 并研究一些覆盖应用程序原型。到目前为止,我还没有设法让仪表板覆盖显示出来。我调用 CreateDashboardOverlay 时得到的错误是 VROverlayError_PermissionDenied。我猜这是因为我需要使用我目前没有的 SteamVR 开发者帐户进行身份验证。任何人都可以验证吗?除了 openvr.h 和 openvr github 文档页面中的内容之外,似乎根本没有任何(公共)文档,这有点稀疏。

我还猜测任何仪表板覆盖应用程序都需要通过官方 Steam 商店分发,但我再次找不到任何官方信息。我怀疑 Valve 会要求这样做,否则任何碰巧在系统上运行的旧恶意软件都可以轻松创建一个官方外观的仪表板覆盖。

再次注意,我专门指的是仪表板覆盖。我可以让常规覆盖显示得很好。

在 github 上有一些 repos 实现了 steamvr 覆盖(例如https://github.com/Hotrian/OpenVRDesktopDisplayPortal),但我还没有找到一个真正创建仪表板覆盖的存储库。

我以某种方式缺少的任何信息或文档链接将不胜感激。我开始认为我可能遗漏了一些明显的东西。

谢谢

为清楚起见进行编辑:

我的问题是:调用 CreateDashboardOverlay 时是否收到权限被拒绝错误,因为我需要满足某种身份验证要求,例如拥有 Steam 开发帐户?SteamVR 仪表板覆盖应用程序是否需要通过官方渠道分发?

0 投票
0 回答
284 浏览

unity3d - HTC Vive 和 SteamVR 冻结 Unity

我在 Unity 中正确安装了 SteamVR 插件,但在随机时间点或出于某种原因,当我在制作动画时,Unity 编辑器会冻结。任何非 VR 项目都不会发生这种情况,如果我在冻结时处于播放模式,我仍然可以在所有脚本正常工作的情况下在 VR 中玩游戏,所以只是编辑器本身冻结了。任何帮助将不胜感激。

0 投票
1 回答
263 浏览

qt - QtQuick 未与 Visual C++ 正确安装

我们正在尝试在 Visual Studio 2015中运行 OpenVR 模拟器(链接https://github.com/matzman666/OpenVR-InputEmulator )。构建成功。但是我们得到了错误

在此处输入图像描述

看来我们的机器上没有正确安装 Qt 库。我们已经尝试重新安装 Qt 库。下面的日志说没有安装 QtQuick。但是,我们已经完全安装了 Qt 5.7.0 。任何人都可以提供一些线索或帮助吗?

在此处输入图像描述

0 投票
0 回答
53 浏览

json - SteamVR HDK JSON 错误

我现在正在处理 GUI 问题。我正在为一个学校项目制作一个用于在 VR 中跟踪的控制器,并且我正处于运行模拟以验证我的 JSON 的阶段。我必须亲手制作,因为我们的团队已经决定了传感器的位置,所以我遵循了参考控制器模板。不幸的是,在 [34, 33] 处有一个我无法弄清楚的永久错误。我将在这里发布一段代码:

“plus_z”:[0,1,0],“位置”:[-0.05221,0,0]},“render_model”:“KNIFE_MODEL.obj”,“head”:

这些是第 31-35 行。我的错误是前导小数,但是当我通过几个在线 JSON 验证器运行它时,我的代码是有效的。今天早些时候,模型在 OpenScad 中可视化了几次,但是我的传感器方向是错误的,所以当我修复坐标时,GUI 给了我和往常一样的错误。无论我恢复到哪个版本,我都会遇到同样的错误。

0 投票
1 回答
49 浏览

c++ - 无法从 VRChaperone 访问游戏区

我正在使用 openVR 框架编写一些 C++ 代码。我可以成功地从控制器中提取位置数据,但我需要游戏区域的宽度和深度,以便将位置数据缩放到我的屏幕。

我试过了

但它一直说 posX 和 posZ 都是 0。有什么想法吗?

0 投票
2 回答
1593 浏览

c# - 使用 EncodeToJPG(在 OpenVR 中)将 Texture2D 转换为 Byte[]

我有一个问题!

我只是想要,只是...使用EncodeToJPG()函数将Texture2D转换为Byte[] !

我的工作区是 Unity 和 C# Script,+ OpenCvSharp。

也许你认为这很容易,但它有一些问题。

此脚本使用 OpenVR(HTC VIVE)。

无论如何,这是我的来源。

而且……有问题。变量纹理是异常Texture2D类型。

_texture是由函数CreateExternalTexture创建的,它具有名为 nativeTex 的 Intptr 类型参数

我不知道我该怎么办?

+++编辑!错误显示 +++

在此处输入图像描述

0 投票
1 回答
314 浏览

python - 重置 HTC Vive 起源/“世界”

想知道是否有人可以提供帮助。

因此,我尝试使用 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

& 从这部分代码中获取位置:

如果有人有任何提示,我将非常感激。

0 投票
2 回答
1022 浏览

c++ - OpenVR - IVRSystem::GetControllerState 总是返回空结构

我一直在关注 Kamran Bigdely-Shamloo 关于如何从 HTC Vive 获取位置信息的文章,到目前为止效果很好。我的下一步是“听”按钮按下。我已经阅读了文档,它在这里说我需要做的就是查询IVRSystem::GetControllerState,它会返回一个

“具有控制器当前状态的结构”

但是,此结构始终包含具有 0 值的变量。以下函数在函数的while (true)循环中main调用。

m_pHMD 初始化如下:

我一定是做错了什么,因为在下面的代码片段中,if 语句仅在前四次迭代中传递,这应该是控制器、vive 跟踪器、耳机和灯塔。这告诉我我能够访问这些状态,但不知何故我无法读取信息。

我无法想象它是一个错误,所以我的猜测是我的配置有问题,或者我做错了查询。任何帮助是极大的赞赏!

0 投票
1 回答
1726 浏览

unity3d - 使用 OpenVR + SteamVR 在 Unity 中设置 Oculus Rift

您好我正在尝试在 Unity 中设置我的 Oculus Rift 以使用 OpenVR 和 Steam 进行开发。我正在使用 Unity 版本 2017.4 并将 SteamVR 包从资产商店添加到我的项目中。我猜我需要下载 github OpenVR 文件夹并添加到我的项目中,但仅此而已吗?那么Rift会被识别吗?我不确定我是否也需要资产商店中的 Oculus 集成工具,或者它会干扰吗?任何一步一步的帮助都会很棒,提前谢谢你(另外,我知道用 Oculus 而不是 Steam 开发可能更容易,但需要在这个项目中使用 Steam)

0 投票
0 回答
131 浏览

matrix - 如何从一个旋转矩阵传递到另一个?

我正在使用 OpenVR(python 绑定)从旋转矩阵中提取角度。

我有一个算法可以给我这些角度。顺便说一句,我需要将这些角度整合到另一个系统中,该系统使用不同的旋转顺序。

OpenVR 给了我一个 ZYX 旋转矩阵,我需要一个 YXZ 的。是否存在一些算法来进行转换?