如何在精灵工具包中实现齿轮关节?
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
但是如果齿轮的齿数不同(因此传动比不同),您将需要进行一些计算。
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
但是如果齿轮的齿数不同(因此传动比不同),您将需要进行一些计算。