计算SpriteKit游戏中的速度

时间:2013-09-29 22:18:41

标签: iphone ios objective-c ios7 sprite-kit

我正在使用SpriteKit和Kobald Kit(一个开源添加)来创建一个基于区块的游戏,中间有一个角色。目前,当用户使用基于CADisplayLink标记的操纵杆组件时,我正在计算角色的速度值。问题是角色在更高的帧速率下更快,什么是正确的解决方案?我知道我可以简单地使用操纵杆本身的Y值,但我不会松动加速/减速效果......

1 个答案:

答案 0 :(得分:2)

我假设您正在使用计算出的速度来调整游戏中元素的位置。您可以计算当前刻度和最后刻度之间的增量时间,并根据此增量来缩放速度。

我在SKScene的更新方法中做了类似的事情:

- (void) update:(NSTimeInterval) currentTime {
    NSTimeInterval delta = currentTime - self.lastTime;
    self.lastTime = currentTime;
    // use the time delta to determine how much of the velocity to add to the affected sprite
}