你如何为SceneKit设置一个游戏循环?

时间:2016-09-05 19:19:16

标签: ios scenekit

我正在尝试第一次使用SceneKit进行游戏,并且想知道你应该为游戏循环更新游戏状态做些什么。我知道

SCNSceneRendererDelegate.renderer:updateAtTime:

但如果没有对场景进行任何更改并且不需要重新渲染,则不会调用此方法。我也知道你可以使用

强制渲染
SCNView.playing = true

但是在没有必要时强制渲染它似乎很浪费,因为这在我的游戏中经常发生。我可以使用NSTimer,但是如何将其与render:updateAtTime:同步?

1 个答案:

答案 0 :(得分:1)

to_number()的Apple文档专门将SCNSceneRendererDelegaterenderer:updateAtTime:renderer:didApplyAnimationsAtTime:作为添加自定义游戏循环逻辑的地方。

renderer:didSimulatePhysicsAtTime:SCNView.playing时,您是否(使用乐器)测量了性能或能量差异?这听起来像是一个不成熟的优化。