Ios 避免简短的';空屏幕';使用SceneKit
我正在制作一个场景工具包应用程序,它确实运行得非常好。我唯一的烦恼是加载后的一瞬间,我的SCNView对象是完全空白的。我认为这是因为场景尚未加载或渲染,但如果可能的话,我希望避免 我尝试在SCNView前面放置一个模拟应用程序加载屏幕的遮罩视图,并在开始使用renderer:didRenderScene:atTime进行渲染时将其淡出,但遗憾的是,用于淡出遮罩视图的动画没有发生(它只是立即闪烁,而不是淡出)。所以我把屏蔽视图放在应用程序的主窗口中作为一个实验,并给它一个短暂的延迟。然而,即使在移除遮罩之前有延迟,SCNView在场景出现之前的一瞬间仍然是完全空白的Ios 避免简短的';空屏幕';使用SceneKit,ios,swift,scenekit,Ios,Swift,Scenekit,我正在制作一个场景工具包应用程序,它确实运行得非常好。我唯一的烦恼是加载后的一瞬间,我的SCNView对象是完全空白的。我认为这是因为场景尚未加载或渲染,但如果可能的话,我希望避免 我尝试在SCNView前面放置一个模拟应用程序加载屏幕的遮罩视图,并在开始使用renderer:didRenderScene:atTime进行渲染时将其淡出,但遗憾的是,用于淡出遮罩视图的动画没有发生(它只是立即闪烁,而不是淡出)。所以我把屏蔽视图放在应用程序的主窗口中作为一个实验,并给它一个短暂的延迟。然而,即使在
有谁能告诉我如何避免这种恼人的图形人工制品吗?像往常一样,有一个简单的修复方法,我直到现在才找到。完成场景设置后,只需执行以下操作:
sceneView.prepareObject(scene, shouldAbortBlock:nil)
…还有宾果!不要耽搁。这是因为与SCNView中的所有对象一样,场景也是延迟加载的。调用prepareObject可以让您提前缓存它们。它是在iOS还是OS X上?什么时候设置SCNView的场景?(视图将出现/从NIB唤醒…)没关系,我发现了问题。恼人的是,我已经知道这个方法,但不知道它可以应用于整个场景!谢谢你的帮忙!谢谢你,我为这件讨厌的小事浪费了几个小时。