Daydream View Controller Emulator 無法與 Google VR SDK 1.1 和 Unity 5.6 beta for Linux 配合使用



我无法让控制器模拟器与Google VR SDK 1.1&64位Arch Linux下的Unity 5.6b3。如果我在Unit中加载GVRDemo场景,并单击播放按钮进入播放模式,控制台将显示以下内容:

"未找到Android调试桥(adb)命令。验证Android SDK是否已安装,并且包含adb的目录是否包含在PATH环境变量中。">

在Windows中,您必须将包含Android调试桥(adb)程序的目录添加到Windows本身的PATH环境变量中(而不是在Unity程序中)。完成此操作后,Controller Emulator在Windows中运行良好。显然,你必须在Linux中做同样的事情,才能让Unity找到adb,从而让Controller Emulator手机测试游戏。

我在主目录中的.bashrc和.profile文件中添加了以下行:

"PATH=/home/jesse/Android/Sdk/platform-tools/:$PATH">

然而,这并不能解决问题。

我还将Android SDK的根目录添加到了我的Unity Preferences>External Tools部分。

我不知道如何让Unity和Google VR SDK识别包含PATH环境变量adb的目录,Unity需要该环境变量才能使Controller Emulator工作。

其他人有这个问题吗?有没有解决办法?

我找到了罪魁祸首,并修改了Google VR SDK脚本使其发挥作用!事实证明,标题为"EmulatorClientSocket.cs"的脚本文件的代码中存在与非Windows机器有关的问题。以下是我更改的内容,以及原因:

最初,在这个脚本的第111行和第112行中,它写道:

stringprocessFilename="bash">

stringprocessArguments=string。格式("-l-c\"{0}\",adbCommand)

上下文是,当Windows不存在时(请原谅我的外行术语——我一个月前才开始学习编码),要处理的命令是:bash-l-c"adb-forward tcp:7003 tcp:7003">。问题是,当在命令中使用-l选项时,该命令被解释为来自登录shell,我认为这意味着bash没有查看用户主目录中的.bashrc和.profile文件中设置的自定义环境变量。如果不查看这些文件,bash就无法找到adb命令(请尝试在终端中运行上面的bold命令,结果将是一个提示,提示找不到adb命令)。

为了修复它,我只是从第112行删除了-l选项,瞧!一切都像一种魅力!第111行和第112行现在看起来是这样的:

stringprocessFilename="bash">

stringprocessArguments=string。格式("-c\"{0}\",adbCommand)

当从终端或Xterm运行"统一编辑器"或"统一编辑器测试版"时,修复程序将起作用,但从应用程序菜单运行它仍然会产生adb错误,控制器模拟器将无法工作。

最新更新