2016-08-01 62 views
1

方向我在现场的SKPhysicsBody,我申请的冲动,只要用户按下一个按钮,使其向前移动。由于它的特性,它不会随着一个水龙头移动太多,而且速度也会很快下降,但是如同预期的那样,通过多次水龙头,它可以提高速度。平滑变化的SKPhysicsBody的势头

我还有一个按钮,供用户挖掘使人体可以改变它的方向。我目前的实施方式将角度冲动应用于身体以旋转它 - 同样,身体的属性意味着如果用户多次轻敲旋转按钮多次,则身体停止旋转需要更长的时间。目前,当身体旋转时,其动量不会改变方向(这是我期望从任何物理库中获得的) - 为了使用户实际上使身体在新方向上移动,疯狂地按下前进按钮来尝试并减缓之前的势头。当然,在高速下身体似乎打滑。

我怎样才能实现对身体更“轿车般的”物理? “像汽车一样”,因为当身体旋转时,动量在每个时间间隔顺利地更新,并朝着新的方向发展。这可以简单地完成,还是需要使用临时绳索,重力场或涡旋?

A diagram speaks 2000 words

+0

你试过applyForce(_:at :)吗? –

+0

@SimonePistecchia它没有多大的差别:( –

回答

0

应用在SpriteKit力或冲量在全球坐标系中的条款适用,而不是局部坐标目标节点的系统。

You'll need to manually rotate the vector of force to match the node's rotation, before applying it.

+0

权,我这个已经工作很好,我的问题是关于改变的动力的方向,而不是如何在前进方向上施加脉冲 –

+0

对不起,我误会了你可以通过旋转车身的'速度'属性来达到结果的效果,以便与车辆的旋转速度相匹配。 – cpimhoff

+0

实际上,这听起来合理,唯一的事情就是使它光滑。我想我可以检查车的旋转更新每个属性的属性并改变它的速度以匹配,尽管这听起来效率低下 –