如何获得Spritekit Gravity的Constant Velocity

时间:2016-02-23 21:42:05

标签: ios swift sprite-kit gravity skphysicsworld

我正在制作一种俄罗斯方块游戏,我希望我的棋盘以恒定的速度下降。我想用SpriteKit Physics Words Gravity来实现它。

问题在于重力必然是加速度,因此当它们下降时阻止开始移动得更快。我知道我可以关闭重力并使用动作移动块,但我希望用重力来做。

有没有办法让SpriteKit世界中的引力成为线性恒定速度?

1 个答案:

答案 0 :(得分:2)

使用默认物理,你无法达到你想要的效果。

在Spite Kit的Gravity中definition显然是一个加速度,因此无法实现线性速度。

  

指定应用于重力加速度的向量   物理世界中的物理团体。

但是,您可以通过一些变通方法来实现您想要的行为。

  1. 重力加速0,并为坠落物体增加速度。
  2. 限制对象的最大速度。
  3. 你有物理学吗?
  4. 我认为最好的方法是将重力作为默认值,通过限制最大速度来实现。

    2 - 限制最高速度

    Consulting this post.

    didSimulatePhysics()中,您可以验证对象的速度并限制它。

    像这样(致@Andrew的信用,在原帖中)

    \*