主题
关节组件
关节组件可以让组件之间产生更真实的物理联系,创造有趣的物理效果。
绳子可以把两个组件连接在一起,并且具有一定柔韧度;
弹簧会在外力作用下产生形变,产生弹力;
门合页能够让组件被推动旋转;
滑动导轨可以让组件在某条轨道上滑动;
球窝关节能够让组件自由摆动;
刚性连接可以将两个组件固定在一起。
关节组件
在组件库的机关-关节分类下,可以找到关节组件分类。

拖出任意关节组件,在物理页面可以调整它的关节属性。

关节实际上是在两个物体之间制造一种物理约束关系,所以它必须连接两个开启物理碰撞的组件,其中至少有一个是可受力组件。
当关节的本体组件受力时,与它有关节连接的组件也会受到影响,因为关节的物理约束会附带绑定的效果。
选择关节连接本体组件和关节连接目标组件后,关节组件会自动调整成连接两个组件的形态。

关节组件的位置不会影响关节的效果,但是旋转角会对部分关节(如滑动导轨)产生影响。
关节组件可以选择是否在游玩时显示模型,部分关节支持调整模型的粗细,但是关节本身并不存在物理碰撞。
关节锚点
锚点是关节真正的连接点,它的位置会影响关节对物体施力的效果。
设定连接组件后,可以通过输入相对坐标(以组件原点为中心的坐标系)或点击前往修改进行可视化编辑修改锚点位置。

关节连接物体之间碰撞
打开【连接物体之间不碰撞】属性后,关节两端的物体彼此之间不会碰撞。


而【相连关节之间不碰撞】会让彼此相连的关节(比如一个关节的连接目标是另一个关节的连接本体)之间所有物体不发生碰撞,只要当中有一个关节打开该选项即会生效。
绳子
绳子的作用和现实生活里的绳子类似,它可以让两个组件之间的距离保持在有限范围内。

注意
编辑时看到的绳子长度并不是实际游玩时的绳子长度
| 关节属性 | 属性详情 |
|---|---|
| 绳子长度 | 关节连接组件之间的最大距离 |
| 绳子可拉伸 | 开启后可设置【绳子拉伸强度】,拉伸强度越小,绳子越柔韧,绳子可被拉伸的长度越长;拉伸强度越大,绳子回弹力度越大。 拉伸强度为0时等同于不可拉伸 |
| 运行时显示绳子 | 开启后,绳子在游玩环境下显示模型;关闭后仅在编辑模式下显示 |
| 绳子粗细 | 调整绳子模型的外观粗细,不影响物理属性 |
弹簧
弹簧组件会在受力时变形,并在回到原本形状的过程中释放弹力。

| 关节属性 | 属性详情 |
|---|---|
| 加速度弹簧 | 开启后,在刚度、阻尼不变的情况下可让不同质量的物体受力表现保持一致 |
| 弹簧刚度 | 数值越大,弹簧恢复初始状态的力越大;物体质量过大时,弹簧表现将受到影响 |
| 弹簧阻尼 | 数值越大,弹簧振幅的衰减越快;物体质量过大时,弹簧表现将受到影响 |
| 弹簧自由长度可编辑 | 关闭时为物体之间的初始距离。开启后自由长度即弹簧在静止状态下的长度 |
| 弹簧最小长度 | 弹簧可压缩至的最小长度值,低于该值时弹簧不再缩短 |
| 弹簧最大长度 | 弹簧可拉伸至的最大长度值,超过该值时弹簧不再伸长 |
| 弹簧最大力限制 | 弹簧可承受的最大作用力 |
| 运行时显示弹簧 | 开启后,弹簧在游戏运行状态下保持可见;关闭后仅在编辑模式下显示 |
| 弹簧粗细 | 调整弹簧的外观粗细,不影响物理属性 |
加速度弹簧
关闭加速度弹簧开关时,不同质量的物体受力表现差异明显。
打开加速度弹簧开关后,可以观察到不同质量物体在弹簧上的受力表现相差不大。

弹簧刚度
弹簧刚度决定弹簧的弹性强弱,弹性越大,回弹越快。

弹簧阻尼
弹簧阻尼越大,弹簧越快恢复静止状态。

滑动导轨
滑动导轨可以让目标组件沿着某个轴的固定方向移动。

默认情况下,目标组件受力后会持续移动直到受到阻力(目标组件上的阻尼系数)停止。
目标组件质量越大,需要的驱动强度越大。
| 关节属性 | 属性详情 |
|---|---|
| 滑动轴方向 | 设置滑动轴方向以局部坐标系为准 |
| 滑动距离限制 | 打开后目标组件的可到达距离将受限,显示为红色轨迹线 ![]() |
| 位置驱动 | 开启时物体受力驱动移动至目标位置,目标位置将显示为蓝色标记处 位置驱动强度越大,组件到达目标位置用时越短 |
| 速度驱动 | 开启时给目标组件添加匀速移动效果,目标组件会一直移动直到受到阻力或驱动停止,可设置目标速度与速度驱动强度 |
| 默认启动驱动 | 开启后,游戏开始时自动启动位置/速度驱动 |
| 启动驱动事件 | 所填写的事件被触发时,关节组件启动驱动 |
| 停止驱动事件 | 所填写的事件被触发时,关节组件停止驱动 |
门合页
门合页可以让目标组件围绕某个轴旋转。

| 关节属性 | 属性详情 |
|---|---|
| 合页旋转限制 | 开启后,将限制物体的旋转角度![]() |
| 位置驱动 | 设置为开启时,物体将持续受力驱动移动至目标位置,目标位置基于【滑动轴】的朝向;可设置【目标位置】与【位置驱动强度】 |
| 速度驱动 | 设置为开启时,物体将持续受力驱动移动至目标位置,目标速度基于【滑动轴】的朝向;可设置【目标速度】与【速度驱动强度】 |
| 默认启动驱动 | 开启后,游戏开始时自动启动位置/速度驱动 |
| 启动驱动事件 | 所填写的事件被触发时,关节组件启动驱动 |
| 停止驱动事件 | 所填写的事件被触发时,关节组件停止驱动 |
球窝关节
球窝关节就像人的肩关节,它能让连接目标围绕这个点朝任意方向摆动和扭转。

| 关节属性 | 属性详情 |
|---|---|
| 开启角度限制 | 开启时,可调节连接目标组件的摆动范围(编辑时显示的圆锥型区域); 关掉时可以完全自由地万向旋转,不受任何角度约束。 ![]() |
| 扭转角度限制 | 开启时,可调节本体组件扭转限制最大/最小角度,限制绕轴自转的角度 ![]() |
| 回正强度 | 设置数值越大,物体回正到初始位置的力越大 |
回正强度
回正强度越大,物体恢复初始位置的力越强。
如图所示,回正强度较小时(右图),关节目标组件在受力后会摆动更长时间。

刚性连接
刚性连接将使两端的组件保持固定距离,这个固定距离即编辑态下组件之间的距离。
和绑定类似,但是刚性连接能够连接两个受外力的物体,让它们互相跟随对方移动,这点是绑定无法达到的。

关节相关蛋码
你还可通过【蛋码】-【动作积木】启用或禁用关节、修改关节属性、设置关节可见性,以及创建或销毁关节组件。





