0

作为一个非游戏玩家,我只想玩VR并体验它。与 Oculus 和 Hive 相比,OSVR 对我来说似乎是一种便宜的选择。

上周我拿到了 HDK,非常兴奋,想马上在我的 Mac Book Pro(OSX 10.11.5 El Capitan / 2.7 GHz i7 / 16GB DDR3 / nVidia GeForce GT 650M 1024MB)上测试它。

首先,我使用自制选项安装了 osvrcore 每个https://github.com/OSVR/OSVR-Docs/blob/master/Getting-Started/Installing/osx.md

$ brew tap OSVR/osvr
$ brew install osvr-core --HEAD

不过,我确实必须使用自制软件手动安装 opencv。

然后我连接了所有电缆并将 HMD 和相机连接到我的 Mac。看到我的屏幕延伸到 HMD 屏幕,但旋转了 90 度。根据https://github.com/OSVR/OSVR-Docs/blob/master/Getting-Started/HDK/HDK-Unboxing-and-Getting-Started.md

默认情况下,它可能会显示为 1080x1920“纵向”显示。这是最高性能的模式。但是,此时大多数应用程序无法在该模式下使用它,因此您需要选择 1920x1080 分辨率。(这并不意味着您必须更改“旋转”设置 - 只需选择备用分辨率,HMD 将在内部执行旋转。)

但是,上面的方法对我不起作用,在将分辨率设置为 1920x1080 后,头显上的显示变得一团糟。所以我关注了http://www.osvr.org/forum/viewtopic.php?f=10&t=3572&p=4272&hilit=osx#p4272并且只是做了屏幕旋转,然后我可以看到扩展屏幕在 HMD 上显示正常。

从那时起,我就被困住了。根据 https://github.com/OSVR/OSVR-Docs/blob/master/Getting-Started/HDK/HDK-Unboxing-and-Getting-Started.md

默认配置应该适用于具有直接模式系统的 HDK 1.3/1.4 用户,但还有其他配置选项。此外,HMD 本身还有一个配置工具,可以让您进一步自定义。

看起来默认配置文件只是空的:

/* The default config file, as used with the HDK, is fully auto-detected, so no configuration required. */
/* See the JSON-Schema for server config or other samples to see possible options. */
{
    "description": "The default config file, as used with the HDK, is fully auto-detected, so no configuration required. See the JSON-Schema for server config or other samples to see possible options."
}

无论如何,我继续运行它:

$ pwd
/usr/local/Cellar/osvr-core/HEAD/share/osvrcore

$ osvr_server osvr_server_config.json
[OSVR Server] Using config file 'osvr_server_config.json'
[OSVR Server] Constructing server as configured...
[OSVR Server] Loading auto-loadable plugins...
[OSVR Server] Loading plugins...
[OSVR Server] 
[OSVR Server] Instantiating configured drivers...
[OSVR Server] 
[OSVR Server] Using OSVR HDK for display configuration. Did not find an alternate valid 'display' object in config file.
[OSVR Server] Triggering automatic hardware detection...
[OSVR Server] Registering shutdown handler...
[OSVR Server] Starting server mainloop: OSVR Server is ready to go!
[OSVR] Performing hardware auto-detection.
[OSVR] Added device: com_osvr_Multiserver/OSVRHackerDevKit0
[OSVR] Added device: com_osvr_Multiserver/OSVRHackerDevKitPrediction0
[OSVR] Path tree updated or connection detected
[OSVR] Sending path tree to clients.

然后我按照http://hapticmonkey.weebly.com/blog/installing-osvr-on-yosemite-mac-os安装 OSVRTrackerView 并在单独的窗口上运行 OSVRTrackerView。我确实在我的 mac 屏幕上的一个窗口中看到了红色/蓝色/绿色箭头,当我旋转我的 HMD 时,这些箭头确实旋转了。但就是这样。我在 HMD 屏幕上看不到它。

这是 osvr-server 的输出

[OSVR] Added device: com_osvr_Multiserver/OSVRHackerDevKit0
[OSVR] Added device: com_osvr_Multiserver/OSVRHackerDevKitPrediction0
[OSVR] Path tree updated or connection detected
[OSVR] Sending path tree to clients.
vrpn: Connection request received from 127.0.0.1: 127.0.0.1 65307
[OSVR] Performing hardware auto-detection.
[OSVR] Path tree updated or connection detected
[OSVR] Sending path tree to clients.
vrpn: Connection request received from 127.0.0.1: 127.0.0.1 65309[/code]

这是 TrackerView 控制台的输出:

$ /usr/local/Cellar/osvr-tracker-viewer/HEAD/OSVRTrackerView
[OSVR] Connecting to default (local) host
[OSVR] Client context initialized for org.osvr.trackerview
[OSVR] Got connection to main OSVR server
[OSVR] Got updated path tree, processing
[OSVR] Connected 0 of 0 unconnected paths successfully
[OSVR] Connection process took 10ms: have connection to server, have path tree

[TrackerViewer] No arguments passed: default is as if you passed the following:
 --pose /me/hands/left --pose /me/hands/right --pose /me/head

您可以指定 --pose 或 --orientation 然后指定路径,根据需要多次。传递参数 --help 以获取更多信息。

[OSVR] Interface initialized for /me/hands/left
[OSVR] Could not resolve source for /me/hands/left
[OSVR] Interface initialized for /me/hands/right
[OSVR] Could not resolve source for /me/hands/right
[OSVR] Interface initialized for /me/head
[OSVR] Constructed a TrackerHandler for com_osvr_Multiserver/OSVRHackerDevKitPrediction0@localhost:3883 sensor 0
[OSVR] Successfully produced handler for /me/head

[TrackerViewer] /me/head - got first report, enabling display![/code]

现在我想更进一步。根据https://github.com/OSVR/OSVR-Docs/blob/master/Getting-Started/HDK/HDK-Unboxing-and-Getting-Started.md,我可以运行The "Palace" Demo

OSVR Unity Palace Demo(源代码库)是一个视觉丰富的环境,用于查看和探索使用 OSVR 支持的硬件,包括 HDK。第一个链接包含 Windows 的二进制下载:只需下载并运行(确保 OSVR 服务器正在运行!),如果需要,可以使用游戏手柄或键盘和鼠标在环境中移动。在启动屏幕上,您需要选择 HDK 配置的显示器以及 1920x1080 全高清分辨率。

但它似乎只适用于 Windows。而且我不确定如何让它在 Mac 上运行。

我也尝试使用其他配置文件:osvr_server_config.HDK13DirectMode.sample.json:

$ cp sample-configs/osvr_server_config.HDK13DirectMode.sample.json osvr_server_config.json

$ osvr_server osvr_server_config.json
[OSVR Server] Using config file 'osvr_server_config.json'
[OSVR Server] Constructing server as configured...
[OSVR Server] Loading auto-loadable plugins...
[OSVR Server] Loading plugins...
[OSVR Server] 
[OSVR Server] Instantiating configured drivers...
[OSVR] Added device: org_osvr_filter_videoimufusion/HeadFusion
[OSVR] Client context initialized for org.osvr.analysisplugin
[OSVR] Interface initialized for /com_osvr_Multiserver/OSVRHackerDevKitPrediction0/semantic/hmd
[OSVR] Interface initialized for /com_osvr_VideoBasedHMDTracker/TrackedCamera0_0/semantic/hmd/front
[OSVR Server] Successes:
[OSVR Server]  - com_osvr_VideoBasedHMDTracker/VideoBasedHMDTracker
[OSVR Server]  - org_osvr_filter_videoimufusion/VideoIMUFusion
[OSVR Server] 
[OSVR Server] 
[OSVR Server] Aliases found and parsed from config file.
[OSVR Server] Display descriptor found and parsed from config file.
[OSVR Server] RenderManager config found and parsed from the config file.
[OSVR Server] Triggering automatic hardware detection...
[OSVR Server] Registering shutdown handler...
[OSVR Server] Starting server mainloop: OSVR Server is ready to go!
[OSVR] Performing hardware auto-detection.
[OSVR] Added device: com_osvr_Multiserver/OSVRHackerDevKit0
[OSVR] Added device: com_osvr_Multiserver/OSVRHackerDevKitPrediction0

但正如您在上面看到的,它只是卡在那里,我没有看到[OSVR] Sending path tree to clients.与默认(空)配置文件一样的行。更重要的是,有了这个配置文件,我什至不能杀死 osvr-server 了。它只是打印出来:

^C[OSVR Server] Received shutdown signal...
^C[OSVR Server] Received shutdown signal...
^C[OSVR Server] Received shutdown signal...
^C[OSVR Server] Received shutdown signal...
^C[OSVR Server] Received shutdown signal...

所以我不得不杀死 -9 那个进程。

我还尝试继续从https://itch.io/games/osvr/platform-osx下载一个游戏,这个:https ://seven-hills-games.itch.io/hellicott-city 。但是当我启动它时。它只在我的 Mac 屏幕上显示所有内容,顶部显示“未检测到 HMD”警告。

任何人都可以就下一步要做什么提出任何建议吗?

4

2 回答 2

0

不是 Mac 用户或熟悉该特定游戏,但是;它可能仅在扩展模式下运行和/或直接模式在 Mac 上不可用。您是否尝试更改配置以关闭直接模式?Tracker Viewer 不应该出现在 HDK 中,它更多的是验证跟踪是否工作/调试。在 Windows 上,当 HDK 处于扩展模式时,它会在显示属性中显示为附加屏幕。有一个名为 OSVR Config 的应用程序,但它可能仅适用于 Windows。显示配置位于\OSVR-Core\bin\osvr_server_config.json. 尝试设置"directModeEnabled": false

于 2016-06-20T08:21:00.053 回答
0

OSVR 和 Hellicott City 开发人员在这里。

你能让 RenderManagerOpenGL 示例运行吗?不确定这是否包含在自制软件安装中。我无法让 homebrew 安装工作,但是当我从源代码构建 OSVR-Core 时,RenderManager 示例工作。在继续使用其他应用程序之前,我会使用扩展模式配置对其进行测试,因为它需要运行的一切都已经存在。

@reden 是正确的,直接模式不起作用,您需要使用扩展模式配置文件,或者像您发布的任何空配置文件,它们根本不会使用 RenderManager。

Hellicott City、Palace Demo 和其他 OSVR-Unity 示例不附带适用于 Mac 的 OSVR 库。我认为您需要做的是在 Unity 中打开 Palace Demo,将必要的 osvr*.so 库添加到 Plugins 目录,然后为 Mac 构建。这些 osvr*.so 文件应该在 homebrew 安装 OSVR 的任何地方。但是,在OSVR-Unity-Rendering 插件也为 Mac 构建之前,您将无法使用 RenderManager 。截至目前,该插件不适用于 OpenGL,但 OSVR-Unity 在没有 RenderManager/OSVR-Unity-Rendering 插件的情况下仍然可以使用。这些事情都在待办事项清单上,但 Mac 支持并不是首要任务。

于 2016-06-21T18:58:11.527 回答