如何在精灵工具包中实现齿轮关节?

how to implement gear joint in sprite kit?

Box2d 中的齿轮关节很棒,但我不知道如何在 Sprite Kit 中实现它。在 Sprite Kit 中是否有实现齿轮关节的解决方案?

谢谢。

以下是可用的 Sprite-Kit 关节:https://developer.apple.com/reference/spritekit/skphysicsjoint

据我了解,似乎与 Box2D 的齿轮关节没有直接关联,它似乎使一个物体在另一个物体旋转时旋转。

在这种情况下,您可能想要研究重写 didSimulatePhysics 或 didFinishUpdate 方法,以根据另一个对象的旋转手动设置一个对象的旋转:

https://developer.apple.com/reference/spritekit/skscene/1519965-didsimulatephysics

https://developer.apple.com/reference/spritekit/skscene/1520269-didfinishupdate

它可能很简单:

wheel2.zRotation = wheel1.zRotation

但是如果齿轮的齿数不同(因此传动比不同),您将需要进行一些计算。