弹簧关节 (Spring Joint)        

弹簧关节 (Spring Joint) 将两个刚体 (Rigidbody) 组合在一起,从而将其约束为如同通过弹簧连接一样进行移动。


弹簧关节 (Spring Joint) 检视器 (Inspector)

属性

属性:功能:
连接体 (Connected Body)对关节 (Joint) 所依赖的刚体 (Rigidbody) 的可选引用。
锚点 (Anchor)对象局部坐标空间中定义关节 (Joint) 中心的位置(静止时)。这不是将对象拉向的位置。
X关节 (Joint) 局部坐标中心沿 X 轴的位置。
Y关节 (Joint) 局部坐标中心沿 Y 轴的位置。
Z关节 (Joint) 局部坐标中心沿 Z 轴的位置。
弹簧 (Spring)弹簧的强度。
阻尼 (Damper)弹簧在处于活动状态时缩减的量
最小距离 (Min Distance)大于此值的距离不会使弹簧激活。
最大距离 (Max Distance)小于此值的距离不会使弹簧激活。
折断力 (Break Force)为使此关节 (Joint) 折断而需要应用的力。
折断扭矩 (Break Torque)为使此关节 (Joint) 折断而需要应用的扭矩。

详细信息

弹簧关节 (Spring Joint) 使刚体化 (Rigidbodied) 游戏对象 (GameObject) 可以被拉向特定“目标”位置。此位置为另一个刚体化 (Rigidbodied) 游戏对象 (GameObject) 或世界坐标。随着游戏对象 (GameObject) 背向此“目标”位置前进得更远,弹簧关节 (Spring Joint) 会应用力,该力将对象拉回到其原始“目标”位置。这会形成非常类似于橡皮筋或弹弓的效果。

创建弹簧关节 (Spring Joint) 时或进入“播放”(Play) 模式时,弹簧的“目标”位置由锚点 (Anchor)连接体 (Connected Body) (或世界坐标)的相对位置确定。这使弹簧关节 (Spring Joint) 对于在编辑器中设置带关节角色或对象非常有效,但是更难以通过脚本在运行时创建推/拉弹簧行为。如果要主要使用弹簧关节 (Spring Joint) 控制游戏对象 (GameObject),则最好创建带刚体 (Rigidbody) 的空游戏对象 (GameObject),并将其设置为带关节对象的连接刚体 (Connected Rigidbody) 。随后在脚本中可以更改连接刚体 (Connected Rigidbody) 的位置并看到弹簧按预期方式移动。

连接刚体 (Connected Rigidbody)

无需将连接刚体 (Connected Rigidbody) 用于关节 (Joint) 即可使其工作。一般而言,仅当对象位置和/或旋转依赖于连接刚体 (Connected Rigidbody) 才应使用它。如果不存在连接刚体 (Connected Rigidbody),则弹簧会连接到世界坐标。

弹簧 (Spring) 和阻尼 (Damper)

弹簧 (Spring) 是将对象朝其“目标”位置拉回的力的强度。如果此值为 0,则不会有拉动对象的力,行为方式如同根本未附加弹簧关节 (Spring Joint) 时一样。阻尼 (Damper)弹簧 (Spring) 力遇到的阻力。此值越低,对象弹性越大。随着阻尼 (Damper) 增大,关节 (Joint) 形成的弹力量会减小。

最小距离 (Min Distance) 和最大距离 (Max Distance)

如果对象位置处于最小距离 (Min Distances) 与最大距离 (Max Distances),之间,则不会将关节 (Joint) 应用于对象。位置必须移动超出这些值范围才能使关节 (Joint) 激活。

提示

  • 无需将连接体 (Connected Body) 分配给关节 (Joint) 即可使其工作。

  • 在进入“播放”(Play) 模式之前在编辑器中设置带关节对象的理想位置。

  • 弹簧关节 (Spring Joint) 需要向对象附加刚体 (Rigidbody)。

,