物理引擎包含以下 Constraints,其表现为概念上的机械连接,包括铰链、弹簧、绳索等。此外,还有各种 移动器约束,可以对 组合体 施加方向或旋转力。
球接头BallSocketConstraint 将其两个附着点固定在相同位置,使其可以自由绕三个轴旋转,具有可选的限位以限制倾斜和扭转
铰链HingeConstraint 允许其两个附着点绕一个轴旋转,并可选分配动力以实现电机或伺服器行为
平移PrismaticConstraint 允许两个附着点沿一个轴滑动,但不允许旋转,并可选分配动力以用于滑动门和电梯平台等机制
圆柱形CylindricalConstraint 允许其附着点沿一个轴滑动并绕另一个轴旋转,并可选分配角度和/或线性动力
弹簧SpringConstraint 根据弹簧和阻尼器的行为对其附着点施加力,可选最小/最大长度
扭转弹簧TorsionSpringConstraint 根据相对角度和相对角速度施加扭矩,试图将两个部分的两个轴合在一起
万向节UniversalConstraint 确保两个组合体上的两个轴保持垂直,适用于车辆动力传输到后驱动轴、机器人等应用
绳索RopeConstraint 防止两个附着点的分离超出定义长度,并可选用作扩展或收缩的绞盘
杆RodConstraint 保持两个附着点之间的距离为定义长度,并可选限制旋转倾斜
平面PlaneConstraint 将两个附着点移动到沿平面的某个位置/方向,并且除非另行约束,否则两个附着点可以自由平移和旋转
焊接WeldConstraint 将两个 BaseParts 连接在一起,并确保它们在彼此之间保持相同的相对位置和方向,即使它们不接触
刚性RigidConstraint 连接两个 Attachments 或 Bones 并确保它们在彼此之间保持相同的相对位置/方向,即使它们不接触
无碰撞NoCollisionConstraint 防止两个特定部件之间的碰撞,但这些部件仍然可以与世界的其余部分发生碰撞
约束可视化
要准确地在Studio中可视化约束,您可以从视图菜单或通过相应的快捷键切换以下内容:
- 显示约束细节 (AltD 或 ⌥D) — 显示非焊接约束的完整可视化细节。
创建约束
所有机械约束必须连接一个或两个 Attachments 或 Bones,除了 WeldConstraint 和 NoCollisionConstraint。当连接到 Bones 时,约束将使用它们的动画位置和方向。
要创建机械约束,您可以从 约束 选取器/按钮插入一个,或通过 资源管理器 窗口插入。
在 Studio 的 模型 选项卡工具栏中,单击并按住约束按钮小角箭头以打开其选取菜单,然后选择所需的约束。

在 3D 视口中,将鼠标悬停在任意 Part 或 MeshPart 上,单击以在可视化点上向部件添加新的 Attachment。或者,悬停并单击现有的 Attachment 或 Bone 以供约束使用。
大多数机械约束在功能上要求有一个 次要 附着点,因此工具通常会提示您在另一个 Part、MeshPart、Attachment 或 Bone 上重复前一步。
](https://prod.docsiteassets.roblox.com/assets/physics/constraints/Creation-Diagram.jpg)
完成的 SpringConstraint 连接两个附着点
物理仿真
要在移动或旋转部件时模拟物理效果,您可以在Studio的工具栏中从几何模式切换到物理模式,这样部件就会遵循物理限制。例如,如果两个部件通过RopeConstraint连接在一起,当您在场景中拖动一个部件时,另一个部件会随着绳索变紧而跟随。
