Unity-铰链关节
铰链关节 (Hinge Joint) 将两个刚体组合在一起,对刚体进行约束,让它们就像通过铰链连接一样移动。铰链关节非常适合用于门,但也可用于模拟链条、钟摆等对象。

属性
属性: 功能:
Connected Body对关节所依赖的刚体的引用(可选)。如果未设置,则关节连接到世界。
Anchor连接体围绕摆动的轴位置。该位置在局部空间中定义。
轴连接体围绕摆动的轴方向。该方向在局部空间中定义。
Auto Configure Connected Anchor如果启用此属性,则会自动计算连接锚点 (Connected Anchor) 位置以便与锚点属性的全局位置匹配。这是默认行为。如果禁用此属性,则可以手动配置连接锚点的位置。
Connected Anchor手动配置连接锚点位置。
Use Spring弹簧使刚体相对于其连接体呈现特定角度。
Spring在启用 Use Spring 的情况下使用的弹簧的属性。
Spring对象声称移动到位时施加的力。
Damper此值越高,对象减速越快。
Target Position弹簧的目标角度。弹簧朝着该角度拉伸(以度为单位)。
Use Motor电机使对象旋转。
Motor在启用 Use Motor 的情况下使用的电机的属性。
Target Velocity对象试图获得的速度。
Force为获得该速度而施加的力。
Free Spin如果启用此属性,则绝不会使用电机来制动旋转,只会进行加速。
Use Limits如果启用此属性,则铰链的角度将被限制在 Min 到 Max 值范围内。Limits __ |在启用 Use Limits__ 的情况下使用的限制的属性。
Min旋转可以达到的最小角度。
Max旋转可以达到的最大角度。
Bounciness当对象达到了最小或最大停止限制时对象的反弹力大小。
Contact Distance在距离极限位置的接触距离内,接触将持续存在以免发生抖动。
Break Force为破坏此关节而需要施加的力。
Break Torque为破坏此关节而需要施加的扭矩。
Enable Collision选中此复选框后,允许关节连接的连接体之间发生碰撞。
Enable Preprocessing禁用预处理有助于稳定无法满足的配置。
详细信息
应将单个铰链关节应用于__游戏对象。铰链将在 Anchor__ 属性指定的位置旋转,并围绕指定的 Axis 属性移动。不需要为关节的 Connected Body 属性分配游戏对象。仅当希望关节的__变换__依赖于附加对象的变换时,才应为 Connected Body 属性分配游戏对象。
请思考门铰链的工作原理。在这种情况下,__轴 (Axis)__ 沿 Y 轴正方向朝上。锚点 (Anchor) 位于门和墙之间交叉处的某个位置。不需要将墙分配给__连接体 (Connected Body)__,因为默认情况下,关节将连接到世界。
现在请思考狗窝门的铰链。狗窝门的__轴__将是侧向的,并沿着正向的相对 X 轴。应将主门分配为__连接体__,因此狗窝门的铰链取决于主门的刚体。
链条
还可以将多个铰链关节串在一起以形成链条。为链条中的每个链接添加一个关节,并将下一个链接作为__连接体__附加。
提示
不需要为关节分配 Connected Body 便可让关节运作。
使用 Break Force 属性来创建动态损坏系统。使用此属性可让玩家破坏环境(例如,通过用火箭发射器爆炸或用汽车冲撞的方式破坏门的铰链)。
Spring、Motor 和 Limits 属性可用于微调关节的行为。
Spring 和 Motor 是互斥的。同时使用这两者会导致不可预测的结果。