0

在使用纯的、展开的 Box2D 和 Cocos2D 时,我曾经能够通过一个名为 GetReactionForce 的漂亮函数来获得关节上的反作用力。我最近开始尝试 Sprite Kit 物理,但我似乎没有找到类似的东西。据我所知,没有现成的。有没有办法可以在 Sprite Kit 中以某种方式实现这一点?物理引擎仍然是 Box2D,但并非所有功能都可用。我认为可以使用形成关节的物体的质量、密度、速度等属性来完成。但我不知道怎么做。

4

1 回答 1

2

它不是现成的,我想不出使用 Sprite Kit 的内置物理来模拟或解决它的方法。

也就是说,忽略 Sprite Kit 的物理特性并在您的应用程序中嵌入 Box2D(或 Chipmunk)是相当容易的。您可以在场景的 didSimulatePhysics 消息中步入世界(即使物理世界属性为 nil 也会被调用)。您可以在主体的 userData 中存储对节点的引用,并在逐步枚举主体并更新其节点(从主体的 userData 获得)的位置和 zRotation 属性。

这些是必不可少的步骤。仅仅因为 Sprite Kit 内置了物理并不意味着您不能使用其他物理引擎。

于 2014-03-13T20:03:47.857 回答