拖动和旋转 Rigidbody2D(使用 HingeJoint)。皮影戏/木偶模拟

dragging and rotating a Rigidbody2D (with HingeJoint). Shadow Play / Puppetry Simulation

我正在尝试在 Unity 中制作一个程序来玩皮影戏木偶(主要是 "Karagöz")。我想使用的角色是由有关节的四肢组成的。他们的上身有一个洞,可以用棍子将他们移动到窗帘后面并旋转身体: Example1

我使用 HingeJoints 构建 2D 角色来模拟它们的实际移动方式。我认为移动它们的最佳方法是使用鼠标。您可以用鼠标拖动它们并使用滚轮旋转物体。

我在角色的洞上放了一个圆形碰撞器,并使用类似这样的脚本 one 来拖动我的角色。我的问题是基于使用 spring 关节的 dragRigidbody2D 解决方案,它对我的​​使用来说太 springy 并且不允许我使用从同一点旋转。

有没有人知道如何从这个特定的孔中拖动和旋转带铰链关节的 2D 刚体而不使其 springy / bouncey?

解决方案是使用 Target Joint 进行拖动,AddTorque 进行旋转