我正在使用本教程:https://www.raywenderlich.com/118225/introduction-sprite-kit-scene-editor
使用Xcode场景编辑器,我尝试将一个摄影机对象添加到场景中,然后让摄像机对象始终保持在播放器精灵的中心位置。每当玩家精灵更新其位置时,该相机应该更新其位置。用于更新相机的功能是:
func updateCamera() {
if let camera = camera {
camera.position = CGPoint(x: player!.position.x, y: player!.position.y)
}
}
此方法仅在场景最初加载时以及当玩家精灵的位置更新时调用。该错误出现在以“camera.position =”开头的行上,并在游戏运行时立即显示。使用非代码相机的其余工作在场景编辑器中,相机对象称为“相机”,以播放器精灵为中心开始,并设置为场景相机。
非常感谢任何有关如何修复此错误的帮助。
答案 0 :(得分:0)
我发现我的问题是我在代码中过早地调用了函数updateCamera
。我在player
被赋予像@Putz1103这样的值之前调用它,所以一旦我在player
之后调用了该方法,该方法就有了这个方法。