2

我正在制作一个基本的应用程序,它可以在屏幕上推送形状并检测与 Sprite Kit 的碰撞。我的第一次尝试是moveTo在节点上使用。我遇到的问题是碰撞,物体会相互旋转而不是反弹。

因此我发现我需要使用applyForceOR applyImpulse

在这种情况下,例如,我有一个圆圈,它在生命开始时位于屏幕外。然后我们确定一个目标退出点,并希望在那个方向上“轻弹”/“推动”节点。

我无法弄清楚如何将Impulse 应用于我作为CGPoint 的目标结束位置。我需要将其发送到 CGVector,但我不确定需要做什么。我环顾四周,发现了一些 Ray tuts,但它们只显示 applyForce 或 moveTo。我不确定如何计算。

4

2 回答 2

1

我找到了一个很好地解释 2D 物理的网站。
http://www.rodedev.com/tutorials/gamephysics/

有了这个,我计算出了需要的角度,并有一个我可以控制的速度,而且效果很好。

于 2015-04-30T08:50:12.860 回答
0

您可以通过手动更改 x 和 y 位置来移动对象,以便到达终点。在您更改的更新功能中yourObject.position.xyourObject.position.y如果我正确理解了您的问题。如果不是,请更明确。希望有帮助。

于 2015-04-28T21:15:54.483 回答