所以,我可以让相机随着玩家移动,但它的表现并不符合我的需求。 我已经设置了单词边界:
func keepPlayerInBounds() {
if player.position.x < frame.minX + player.size.width/2 {
player.position.x = frame.minX + player.size.width/2
}
if player.position.x > frame.maxX + player.size.width/2 {
player.position.x = frame.maxX + player.size.width/2
}
}
我需要将相机的最大和最小X值设置为世界节点中玩家位置的最大和最小X值,并使其随着玩家向左或向右移动而平滑延迟移动。
我尝试设置:
override func didFinishUpdate()
cam.position.x = player.position.x
}
或者:
override func didFinishUpdate() {
let move = SKAction.moveTo(x: player.position.x, duration: 0.5)
cam.run(move)
}
但是它带来的麻烦比必要的还多。
问题是:如何设置摄像机的左右最大位置,并在延迟移动时避免错误。我花了将近三个星期去寻找答案,但仍然一无所获。谢谢!