使用scene.isPaused
和sceneView.isPlaying
有什么区别?这些只是从不同地方处理的相同事情吗?是将一个更改为true,另一个更改为false,反之亦然?
答案 0 :(得分:0)
通过反复试验,这是我的降落地点,因此您的实际里程可能会有所不同:)
如果isPlaying(SCNRenderer)设置为false(默认值),则场景时间不会增加,因此不会播放与场景关联的动画(来自Apple Docs)。即使示例游戏代码没有进行此调用并且仍在进行动画处理,但如果您打算在渲染循环中处理一些逻辑并且您希望即使没有动画就调用渲染循环,您也可能希望将其打开发生。
如果isPaused设置为true(同样来自docs),则动画和物理引擎将停止。您还可以暂停单个节点(不过我没有尝试过)。
所以和IMO-尽管它们似乎是相关的,但这实际上是两件事。您的动画可能已暂停,但您可能仍要强制运行渲染循环以处理其他逻辑。请记住,如果在渲染循环中处理逻辑,则可能会影响FPS。
希望有帮助。