首页 文章

SCNView 第一次呈现场景非常慢

提问于
浏览
0

我想在运行时在 SceneKit 中动态加载 Collada 文件。我已经使用 copySceneKitAssetst 来生成.DAE 文件并将其放入我的服务器。该应用程序可以从服务器下载它并使用此文件初始化 SCNScene(请参阅http://www.the-nerd.be/2014/11/07/dynamically-load-collada-files-in-scenekit-at-runtime/)。

执行“./copySceneKitAssets”时没有错误,可以正确渲染模型。在将 gameScene 设置为 scnView.scene 之前,我调用了[scnView prepareObject:gameScene shouldAbortBlock:NULL]

问题是 scnView 第一次呈现 gameScene,它非常慢(几秒钟)。即使主线程在此期间被阻止,这意味着 UI 无法刷新,有时候应用程序会在第二次呈现场景时被 iOS.From 杀死,如果我们删除应用程序并重新安装它,它的速度非常快且主线程正常工作 well.But 问题又来了。

任何帮助表示赞赏。

1 回答

  • 2

    我认为prepareObjects(_:withCompletionHandler)(在 SCNSceneRenderer 上定义)值得一看。它在后台线程上加载资源。

相关问题