当 SCNRenderer
调用 [CAMetalLayer nextDrawable]
(the documentation 确实说可以在此期间卡住)。重现该问题并不难,但它只会在应用运行的大约一半时间内随机发生。
出现问题时,有两个渲染队列可见,一个标记为 ARSCNView
,另一个标记为 SCNView
,如以下屏幕截图所示:
我认为这两个队列总是存在的,只是当卡在 nextDrawable
调用时,我只在进入调试器时看到它们。
只有在 iOS 13.1 出现时才看到这个问题,但有可能我只是在 iOS 13 上错过了它。发布这个问题希望其他人现在正在做同样的事情......
最佳答案
这是一个错误
当我们在连接到 Xcode 的 iPhone/iPad 上构建基于 Metal 的 AR 应用程序时,就会发生这种情况。
解决方案
当使用 Xcode 构建/编译应用程序时,只需断开设备与计算机的连接,退出应用程序并独立启动它(不是通过 Xcode)。 AR 应用程序将在没有任何卡住的情况下启动。
关于xcode - iOS 13 ARKit调用nextDrawable卡顿一秒是什么原因?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58216212/