iOS 14 Google Cardboard 视图已损坏

Posted

技术标签:

【中文标题】iOS 14 Google Cardboard 视图已损坏【英文标题】:iOS 14 Google Cardboard view is broken 【发布时间】:2021-01-11 00:28:41 【问题描述】:

在我能找到的所有在 ios 14 (iPhone) 中使用 Cardboard 的应用程序中,VR 视图都出现了严重的错误。相机在整个地方疯狂地摆动。

这是一个视频示例:https://www.reddit.com/r/youtube/comments/i1nbs0/ios_14_vr_error/

官方的 Google Cardboard 应用商店应用程序一启动就损坏了。我开发的使用 GVR 和 Unity 的应用程序也出现了问题。

奇怪的是,如果您重新启动 iPhone,它会暂时按预期运行。中断所需的时间似乎是随机的 - 有时会立即中断,有时会在中断前工作数小时。

我们已经在两部 iPhone 8+ 和一部 iPhone 11 上对此进行了测试。

我尝试过的事情:

更新到测试版 iOS14.2 并不能解决问题。 在 Xcode 12.2 Beta 中重建并不能解决问题 在我的 GVR 项目的本地构建中没有出现错误或警告。

【问题讨论】:

我还能够在以下设备(所有 iOS 14)上重现此问题:iPhone SE (2016)、iPhone XR、iPhone Xs、iPhone 8。以前的版本从未发生过此问题iOS 14。 您好,您在解决此问题方面取得了进展吗? 【参考方案1】:

事实证明 GVR 现在对于 IOS14 已过时(除非有人对其进行了修复......怀疑它)。必须升级到 Cardboard SDK。 https://github.com/googlevr/cardboard/issues/118

【讨论】:

【参考方案2】:

我已经在 Official Goggle Cardboard repository 上回答了这个问题,但这里简要回顾一下谁先到这里:

这是与 (现已过时) Google Cardboard Plugin for Unity 的 iOS 14 不兼容。我不确定是否有解决方法可以继续使用此插件,但我已经在 iPhone XR 和 SE 上测试了new plugin,它的工作原理完全符合预期。

我什至并排加载了我的应用和测试应用,第一个具有完全错误的视图,如帖子中所述,测试应用使用新插件,工作正常。

最后,为了继续在 iOS 14 上通过 Unity 使用 Cardboard VR,您应该:

升级到 Unity 2019.3.15f1 或更高版本 集成新的Google Cardboard XR Plugin

【讨论】:

【参考方案3】:

新的 Cardboard XR 插件修复了这个 iOS 14 问题,但是对我来说还是有点问题。我对此的解决方案是使用Mobfish Google Cardboard package 更新我的应用程序。我强烈推荐它。它适用于 Metal/OpenGLES2/OpenGLES3 和默认渲染器/URP/HDRP。它也适用于 unity 2018 及更高版本,因此不需要 XR 子系统。我使用此插件发布了对我的应用的更新,它修复了 iOS 14 出现的问题。

【讨论】:

我支持 Mobfish 包。我们很难快速升级到 Unity 2019,因此 Mobfish 是使用 Unity 2018 解决此问题的绝佳解决方案。【参考方案4】:

好吧,看吧。我正在使用更新到最新版本的 IOS14 和 Unity 2020.1.9f 和 xcode12 的 I7,我已经完全集成了项目到目前为止它对我有用的唯一方法(在测试场景之外也可以工作,只需对测试场景中的内容进行逆向工程或创建播放器的预制件并拖放到原始场景中,然后删除旧的示例场景你的构建场景)https://developers.google.com/cardboard/develop/unity/quickstart 显然,请确保您按照手机的步骤进行操作,但请确保您完全按照每个步骤操作。

我不建议在 2019.4.11f 之后降级 2019.4.11f 之后的任何内容都有一堆贬值的脚本,这些脚本要么会导致构建或 xcode 出现问题,而且新的统一设置允许人们轻松请求 iOS 新隐私政策和安全性所需的权限。例如,如果您在较旧版本的 Unity 中构建了一个成功的 VR 项目,您可能会放弃其他很酷的功能,如语音命令等......

【讨论】:

【参考方案5】:

仅供参考:

我能够让它工作,而无需编译任何东西。 (我使用 DESTEK V5 耳机和运行 iOS 14.5 beta 的 iPhone 11)

我是如何解决的:

我刚刚更新到 14.5 测试版,而且还 我从 Mobfish 安装了“Player360”。

重启后,一切正常。 VR cardboard view 1 VR cardboard view 2

请专家解释这里可能发生的诡计: 我不知道这是否是对 14.5 beta 的更新和/或从 Mobfish 安装应用程序。 (我想如果我安装了一个嵌入了 iOS 14.X 的 Unity 插件更新的应用程序,我可能会强制 iOS 使用其 RAM 上的 Unity VR 版本。

CAVEATS问题会在以下情况下再次出现

从一个 VR 应用切换到另一个之后 长时间使用 VR 应用后(我使用 Holofit 进行室内划船)

解决方案:重启 iOS

更新

【讨论】:

iOS 14+ 旋转修复:这行得通! 1) 从 Mobfish 安装“Player360”,打开 Player360。 2) 重启 iPhone。 3) 打开您的 PVR 应用程序? 这里是 Player360 apps.apple.com/us/app/player360-official/id1274126825的链接

以上是关于iOS 14 Google Cardboard 视图已损坏的主要内容,如果未能解决你的问题,请参考以下文章

将视图拆分为 2 个视图,用于 iOS 的 google cardboard

如何为 Google Cardboard 配置 React 360

Unity 5.6 与 Google Cardboard 在每只眼睛中显示非常不同的图像

错误膨胀类 com.google.vrtoolkit.cardboard.CardboardView 崩溃应用程序

Android 相机在 Google Cardboard 上缩放纵横比

Sphere 未在 Unity 中为 Google Cardboard 渲染