创建相同的脉冲测量



我注意到应用脉冲可能会有所不同,这取决于您正在应用脉冲的节点是否已经处于运动状态。举个例子,如果我有一个节点平躺在另一个节点上,你施加x: 400的脉冲,节点可能会向上跳200像素,但如果节点处于类似坠落的状态,你施加同样的脉冲,节点可能只会向上跳50像素(我假设这是因为节点的运动方向与脉冲方向相反)。

我的问题是,有没有一种方法可以应用与当前状态相关的脉冲,从而使所有的跳跃都相等?我知道"move by X"可以做到这一点,但它的效果与应用冲量不同。

在对node施加脉冲之前,首先将其当前速度设置为0,然后可以每次施加静态脉冲。

node.physicsBody.velocity = CGVectorMake(0, 0);

最新更新