问题标签 [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.
c++ - 创建插件 - 无法调用成员函数
与 ScriptDragon 合作,尝试使用 OpenVR 将一些 HTC vive 功能放入 Skyrim。
我有什么工作。能够初始化耳机,因为没有错误返回并且指向耳机对象的指针不为空,并且当我进入游戏时,vive灯从红色变为绿色。
在职的
运行游戏文字道具显示HMD指针已设置并成功初始化。 完整的源代码在这里。每当按下 home 键时,它都会调用 hmd 成员函数并突然中断。
初始化后不工作
不起作用的是,一旦我尝试访问任何成员函数,它就会使游戏崩溃,让我相信我没有完全初始化耳机或内存分配存在问题。
我有链接器属性,包括设置和它们应该在的所有外部文件。
ScriptDragon 不应该是问题,因为其他人已经对 razer hydra 做了类似的事情,并且在他们的源代码中,能够在 api 中调用成员函数。
virtual-reality - Openvr 获取磁力计数据
我正在尝试使用 openvr lib 从 HTC VIVE 获取磁力计数据。任何帮助和指导将不胜感激。
如果我可以在 Unity 中访问它,那将是理想的。
oculus - OpenVR 支持哪些耳机
我想知道,没有任何额外的驱动程序,只需要编译的库。
我搜索但没有找到任何明确的答案
谢谢
c - 使用 C FFI 的 OpenVR 库
我正在尝试使用另一种语言的 openVR 库,它只支持 C 的 ffi 。
我看到有一个带有以下注释的 C 标头:“目的:扁平 SteamAPI 的标头。使用它来绑定到其他语言。”
知道如何使用它吗?
感谢您的解释
directx - 谁在使用 Steam 的 OpenVR 时调用 Present()(如果有人的话)?
我是 directx 和 openvr 的新手,我试图了解 OpenVR 合成器 API 的工作原理。文档要求渲染每只眼睛并通过 Submit() 将每只眼睛交给合成器。但是我对 Present() 是如何影响这个流程的有点困惑。我预计需要调用 Present() 来渲染每只眼睛,但通过检查一些现有的 VR 游戏,这不会发生。调用 Present 以在主(非 VR)监视器上渲染任何视图,但根本不调用合成器绘制的内容。
其他人是否调用 Present() 或更低级别的东西?
matrix - VR中的变换矩阵问题
我对 OpenVR api 中的矩阵变换有疑问。
在 openvr 给出的演示中:
其中 GetCurrentViewProjectionMatrix 计算如下
问题是:
1、matDeviceToTracking是从哪个空间变换到哪个空间的?
2,如果我已经有模型视图矩阵,并且已经可以用hmd旋转,我怎样才能正确渲染渲染模型?我尝试使用projection*modelview*m_rmat4DevicePose[ unTrackedDevice ]
但没有效果。
c# - 仅使用指针调用 dll 函数
我正在尝试使用 delphi 的 openVR dll。然而,这个 dll 只导出了有限的功能,很多功能都留在接口内。
因为有一些使用 openVR 的示例,所以我看一下 c 版本标头和c# 版本标头,看看它们是如何做到的。
我从 c 标头中获得的知识并不多,而在 c# 标头中,我注意到他们正在使用一些结构(如 delphi 中的接口)来存储函数表,并有一个用于该结构的类(如 delphi 中的实现类) ,在类内部有一个创建函数,女巫似乎破解了指向所有这些函数的指针。
指针在pInterface
一个包含一组实现类的大类中给出。
哪里OpenVRInterop.GetGenericInterface
是 dll 导出的函数之一。
所以我的问题是:
(1) delphi 可以做 C# 做的事情吗?似乎他只是通过原始指针(地址?偏移量?)调用这些函数我搜索了delphi处理dll,只有两种方式(静态和动态)都需要函数名。
(2) 库的c头是怎么加载的?我在那里没有找到相关的代码。
java - jni 绑定、javac 错误、意外令牌
我们使用 jna 做了一个openvr java 绑定,他们通常所说的 jna 是真的,它很容易实现。
相反,它有一些性能损失。谷歌搜索并阅读一些论文,jna 比 jni 慢 10 到几乎 80 倍(这里和这里)。
这对于非关键性能场景来说不是问题,但我们遇到了一些性能问题,我们正在尝试解决所有原因,例如绑定。
我搜索了一段时间,有很多不同的方法可以实现这一点,但鉴于我们想要移植的标题相对容易(最后一句名言......),我们正在尝试手动完成。
我从两个最重要的电话开始,VR_Init
并且VR_ShutDown
:
对应的java 类非常简单:
现在是时候通过键入来编译HelloVr.java
了HelloVr.class
javac HelloVr.java
但我得到Unexpected Token
:
为什么?
java - Jna,指针已经映射到代理接口
我正在尝试做一个openvr java 绑定的kotlin 端口,并将其更新到 1.0.3
我开始写IVRSystem
结构/类
我手动编写了所有方法,以确保 Intellij 中的自动翻译器不会出现任何错误
我摆脱了来自不同数量字段的所有错误,getFieldOrder()
但现在我仍然收到错误:
根据此评论,似乎对特定回调(GetEyeToHeadTransform_callback
?)有多次调用,但事实并非如此,我检查并仔细检查了代码,该回调只有一个引用。
还可能是什么?
编辑:
首先,这发生在我read()
上课时IVRSysten
,但我无法避免......
其次,我看到这里所有以前的方法都得到了真实的地址,例如native@0x7fee4bebfd0
,只有GetEyeToHeadTransform
得到总是native@0xffffffff
......
编辑2:
调查原始代码
打印出来
GetEyeToHeadTransform
并GetSeatedZeroPoseToStandingAbsoluteTrackingPose
有不同的指针..
opengl - 开放虚拟现实。在没有 SDL 的情况下在 OpenGL 中渲染
这在自然界中可能吗?SDL 库在 OpenVR API 中的作用是什么?它需要 OpenGL 上下文还是仅用于将立体图像镜像到 SDL 窗口?