Swift 如何使相机更频繁地移动?
我有一个Swift 如何使相机更频繁地移动?,swift,camera,sprite-kit,Swift,Camera,Sprite Kit,我有一个Player,它是一个自定义SKShapeNode类对象。 我添加了一个摄像头来跟踪播放器,它正在工作,但我希望摄像头能够更频繁地跟踪播放器。现在,它只是检查相机的视图中是否还有播放器,如果没有,它会移动相机。 我试着检查屏幕的高度,当我接近顶部时移动屏幕,但没有成功。 这是我现在拥有的代码(在update()函数中运行): 这是moveCamera(): 这取决于场景的设置方式,但这可能会起作用: let idealDistance: CGFloat = 600.0 let allow
Player
,它是一个自定义SKShapeNode
类对象。
我添加了一个摄像头
来跟踪播放器,它正在工作,但我希望摄像头能够更频繁地跟踪播放器。现在,它只是检查相机的视图中是否还有播放器,如果没有,它会移动相机。
我试着检查屏幕的高度,当我接近顶部时移动屏幕,但没有成功。
这是我现在拥有的代码(在update()
函数中运行):
这是moveCamera():
这取决于场景的设置方式,但这可能会起作用:
let idealDistance: CGFloat = 600.0
let allowedDelta: CGFloat = 150.0
let offset = cameraNode.position.y - (mPlayer.position.y + idealDistance)
if abs(offset) > allowedDelta {
moveCamera()
}
您可以使用AllowedElta值进行实验,以查看哪些值工作得很好
func moveCamera(){
let moveAction = SKAction.moveTo(y: mPlayer.position.y + 600, duration: 0.1)
cameraNode.run(moveAction)
}
let idealDistance: CGFloat = 600.0
let allowedDelta: CGFloat = 150.0
let offset = cameraNode.position.y - (mPlayer.position.y + idealDistance)
if abs(offset) > allowedDelta {
moveCamera()
}