【发布时间】:2017-11-21 16:20:42
【问题描述】:
我们正在使用 Unity 构建可在较新手机上运行的 360 度视频播放器。我们在构建旧手机时遇到问题,我们可以在右上角和左上角看到退出和设置按钮。我无法找到 GVR 在哪里调用函数来绘制这些按钮以禁用调用。
任何帮助将不胜感激。
【问题讨论】:
标签: unity3d google-cardboard google-vr
我们正在使用 Unity 构建可在较新手机上运行的 360 度视频播放器。我们在构建旧手机时遇到问题,我们可以在右上角和左上角看到退出和设置按钮。我无法找到 GVR 在哪里调用函数来绘制这些按钮以禁用调用。
任何帮助将不胜感激。
【问题讨论】:
标签: unity3d google-cardboard google-vr
使用 0.6 版 GoogleSDK,Unity 5.6。还有更多选择,如果您构建 Cardboard 应用程序,这可能是最适合您的 sdk 版本(不适用于 Daydream 应用程序)。
【讨论】:
我们让它在 Google VR Android 版本 1.18.4 中运行(我们使用了 Unity 包管理器)。感谢我的老板找到了解决方案
我创建了一个包含必要文件的 fork,以防您重新编译它们时遇到困难。 https://github.com/cdr9042/gvr-unity-sdk
在 Packages/Google VR Android/Plugins/Android/ 中使用 WinRAR 打开 gvr.aar(右键单击 > 在资源管理器中显示)
反编译位于里面的文件classes.jar
转到反编译文件夹中的 com/google/vr/cardboard。你会在那里找到文件 UiLayer.java。
编辑 UiLayer.java:
查找并更改这些行:
//change from this.isSettingsButtonEnabled = true;
this.isSettingsButtonEnabled = false;
public boolean getBackButtonEnabled() {
//change from return (this.backButtonListener != null);
return false;
}
重新编译修改后的 UiLayer.java 以创建一个新的 .jar 文件。您可以将它们命名为 uilayer.jar
将 gvr.aar 复制到其他地方
用 WinRAR 打开复制的 gvr.aar 在 WinRAR 窗口中打开 classes.jar 文件 转到 com/google/vr/cardboard 删除所有 UiLayer$*.class 和 UiLayer.class 文件
现在你有了一个新的 uilayer.jar 和一个修改后的 gvr.aar 文件。将它们放在项目中的 Assets/Plugins/Android 中。
删除 Packages/Google VR Android/Plugins/Android/ 中的旧 gvr.aar 文件。您必须在资源管理器中找到它才能删除它
【讨论】: