如何更新 SceneKit 游戏中的 GameplayKit 实体和组件

How to update GameplayKit entities and components in a SceneKit Game

我有一个 SceneKit 游戏,我正在尝试将其与 GameplayKit 集成。

为了让 GameplayKit 工作,我需要通过调用它们的 updateWithDeltaTime(seconds:) 方法来更新我的组件和实体。

在我见过的 SpriteKit/GameplayKit 示例中,这是使用 SKScene 的 update 方法完成的,该方法在用户或开发人员没有输入的情况下连续触发。

似乎在 SceneKit 中,要实现类似的功能,我需要调用 SCNSceneRendererDelegate 方法 renderer(renderer: updateAtTime time:)

但是,这仅在场景中的某些内容 运行ning 时触发,例如 SCNAction。但在我的游戏中,只有 运行ning 才会出现,直到用户滑动。

是否有另一种推荐的 SceneKit 方法来连接到某种 运行 循环中,在没有任何提示的情况下连续 运行s?

默认情况下,SceneKit 不会 运行 动画循环,除非它知道有一些动画。这可以包括动作、动画或物理。

如果您希望动画循环到 运行 而没有任何这些事情发生,请将视图的 playing 属性 设置为 true。