创建约束时,您可以从“创建刚体约束选项”(Create Rigid Body Constraint Options)窗口的“约束类型”(Constraint Type)列表中选择其类型。创建约束后,可以通过从 bulletRigidBodyConstraintShape 节点“属性编辑器”(Attribute Editor)“约束类型”(Constraint Type)列表中选择一个类型来更改约束的类型。

从以下约束类型中进行选择:

  • 点(Point)                

  • 铰链(Hinge)                

  • 滑块(Slider)                

  • 圆锥体扭曲(Cone-Twist)                

  • 六个自由度(Six Degrees-of-Freedom)                

  • 弹簧铰链(Spring Hinge)                

  • 弹簧 6 个自由度(Spring Six Degrees-of-Freedom)              

点(Point)

“点”(Point)约束(在 Bullet Physics 库中称为点到点约束)可限制平移,以便两个刚体之间的枢轴点在世界空间中相匹配。您可以使用“点”(Point)约束创建一些效果(如链条)或将对象固定在一起。

“点”(Point)约束支持以下属性:

  • 角度阻尼(Angular Dampening)

铰链(Hinge)

“铰链”(Hinge)约束可限制平移和其他两个角度自由度,因此实体仅可以绕一个轴旋转。铰链轴由约束的 Z 轴定义。此约束可用于表示绕轴旋转的门或轮子。用户可以为铰链指定限制和马达设置。

“铰链”(Hinge)约束支持以下属性:

  • 角度限制柔和度(Angular Limit Softness)                

  • 角度限制偏移(Angular Limit Bias)                

  • 角度限制松弛(Angular Limit Relaxation)                

  • 角度约束最小  值 Z(Angular Constraint Min Z)                

  • 角度约束最大  值 Z(Angular Constraint Max Z)                

  • 已启用角度马达(Angular Motor Enabled)(打开和关闭 Z 轴马  达。)                

  • 角度马达目标速度(Angular Motor Target Speed)(指定 Z 轴目标速  度。)                

  • 角度马达最大力(Angular Motor Max Force)(指定在单个模拟步骤中可应用  于 Z 轴的最大马达冲量。)                

滑块(Slider)

“滑块”(Slider)约束允许刚体绕一个轴旋转并沿同一轴平移。滑动轴由约束的 Z 轴定义。

“滑块”(Slider)约束支持以下属性:

  • 线性阻尼(Linear Damping)                

  • 线性柔和度(Linear Softness)                

  • 线性恢复(Linear Restitution)                

  • 线性限制偏移(Linear Limit Bias)                

  • 线性限制柔和度(Linear Limit Softness)                

  • 线性限制松弛(Linear Limit Relaxation)                

  • 线性约束最小值 X(Linear Constraint Min X)                

  • 线性约束最大值 X(Linear Constraint Max X)                

  • 已启用线性马达(Linear Motor Enabled)(在 X 轴上打开和关闭    马  达。)                

  • 线性马达目标速度(Linear Motor Target Speed)(指定马达的目标速度。仅使  用 X 字段。)                

  • 线性马达最大力(Linear Motor Max Force)(指定最大马达冲量。仅使 用X字  段。)                

  • 角度阻尼(Angular Damping)                

  • 角度柔和度(Angular Softness)                

  • 角度恢复(Angular Restitution)                

  • 角度限制柔和度(Angular Limit Softness)                

  • 角度限制偏移(Angular Limit Bias)                

  • 角度限制松弛(Angular Limit Relaxation)                

  • 角度约束最小  值 X(Angular Constraint Min X)                

  • 角度约束最大  值 X(Angular Constraint Max X)                

  • 已启用角度马达(Angular Motor Enabled)(在X轴上打开和关闭  达。)                

  • 角度马达目标速度(Angular Motor Target Speed)(仅使用X  值。)                

  • 角度马达最大力(Angular Motor Max Force)(仅使用X  值。)                

圆锥体扭曲(Cone-Twist)

对于布偶,“圆锥体扭曲”(Cone-Twist)约束可用于上臂等肢体。这是一个特殊的点到点约束,可添加圆锥体和扭曲轴限制。X 轴用作扭曲轴。

“圆锥体扭曲”(Cone-Twist)约束支持以下属性:              

  • 角度阻尼(Angular Damping)                  

  • 角度限制柔和度(Angular Limit Softness)                  

  • 角度限制偏移(Angular Limit Bias)                  

  • 角度限制松弛(Angular Limit Relaxation)                  

  • 角度约束最大值 X(Angular Constraint Max X)(以度为单位指定扭曲跨度角度。)                  

  • 角度约束最大值 Y(Angular Constraint Max Y)(以度为单位指定摆动跨度 2 角度。)                  

  • 角度约束最大值 Z(Angular Constraint Max Z)(以度为单位指定摆动跨度 1 角度)。                  

  • 已启用角度马达(Angular Motor Enabled)(在 X 轴上打开和关闭马达。)                  

  • 角度马达最大力 X(Angular Motor Max Force X)                  

六个自由度(Six Degrees-of-Freedom)

“六个自由度”(Six Degrees-of-Freedom)(SixDOF) 约束可以模拟各种标准约束,前提是配置了六个自由度 (DOF) 中的每个自由度。前 3 个 DOF 轴是表示刚体平移的线性轴,而后 3 个 DOF 轴表示角度运动。每个轴均可锁定、自由或受限制。默认情况下,所有轴都已解锁。

“六个自由度”(Six Degrees-Of-Freedom)约束支持以下属性:

  • 线性阻尼(Linear Damping)                

  • 线性柔和度(Linear Softness)                

  • 线性恢复(Linear Restitution)                

  • 线性约束(Linear Constraint)                

  • 线性约束最小值(Linear Constraint Min)                

  • 线性约束最大值(Linear Constraint Max)                

  • 已启用线性马达(Linear Motor Enabled)                

  • 线性马达目标速度  (Linear Motor Target Speed)                

  • 线性马达最大力(Linear Motor Max Force)                

  • 角度阻尼(Angular Damping)                

  • 角度柔和度(Angular Softness)                

  • 角度恢复(Angular Restitution)                

  • 角度约束(Angular Constraint)                

  • 角度约束最小值(Angular Constraint Min)                

  • 角度约束最大值(Angular Constraint Max)                

  • 已启用角度马达(Angular Motor Enabled)                

  • 角度马达目标速度  (Angular Motor Target Speed)                

  • 角度马达最大力(Angular Motor Max Force)                

弹簧铰链(Spring Hinge)

“弹簧铰链”(Spring Hinge)有三个自由度。这些自由度包括绕 Z 轴(轴 1)和 X 轴(轴 2)的两个旋转自由度、沿 Z 轴(轴 1)的一个平移,以及一个悬挂弹簧。“弹簧铰链”(Spring Hinge)约束的一个用例是汽车的方向盘,其中一个轴允许轮子转向,而另一个轮子允许旋转。在此情况下,您需要在 X 轴上将弹簧铰链旋转 -90 度,使轴 1 与 Y 轴对齐。

“弹簧铰链”(Spring Hinge)约束具有用于轴 2 的锚点,由约束的位置指定。轴 1 相对于实体 1 指定。如果实体 1 是底盘,这将为转向轴。轴 2 相对于实体 2 指定,并且垂直于轴 1(沿 X 轴)。如果实体 2 是轮子,这将为轮轴。轴 1(沿 Z 轴)可以具有弹簧以及角度和线性限制,但轴               2(沿 X 轴)是自由的。您不能同时启用弹簧和马达。如果要驱动轴 2,请修改实体 2 的 X 扭矩冲量。

“弹簧铰链”(Spring Hinge)约束支持以下属性:

  • 线性约束(Linear Constraint)                

  • 线性约束最小值 Z(Linear Constraint Min Z)                

  • 线性约束最大值 Z(Linear Constraint Max Z)                

  • 已启用线性弹簧(Linear Spring Enabled)                

  • 线性弹簧刚度(Linear Spring Stiffness)                

  • 线性弹簧阻尼(Linear Spring Dampening)                

  • 角度约束(Angular Constraint)                

  • 角度约束最小值Z(Angular Constraint Min Z)                

  • 角度约束最大值Z(Angular Constraint Max Z)                

  • 已启用角度弹簧(Angular Spring Enabled)                

  • 角度弹簧刚度(Angular Spring Stiffness)                

  • 角度弹簧阻尼(Angular Spring Dampening)                

弹簧六个自由度(Spring Six Degrees-Of-Freedom)

“弹簧六个自由度”(Spring Six Degrees-Of-Freedom)(SpringSixDOF) 约束是“六个自由度”(Six Degrees-of-Freedom)约束的变量,其中包含为每个自由度添加的弹簧。在此约束上不能组合弹簧和马达。

“弹簧六个自由度”(Spring Six Degrees-Of-Freedom)约束支持以下属性:

  • 线性约束(Linear Constraint)                

  • 线性约束最小值(Linear Constraint Min)                

  • 线性约束最大值(Linear Constraint Max)                

  • 已启用线性弹簧(Linear Spring Enabled)                

  • 线性弹簧刚度(Linear Spring Stiffness)                

  • 线性弹簧阻尼(Linear Spring Dampening)                

  • 角度约束(Angular Constraint)                

  • 角度约束最小值(Angular Constraint Min)                

  • 角度约束最大值(Angular Constraint Max)                

  • 已启用角度弹簧(Angular Spring Enabled)                

  • 角度弹簧刚度(Angular Spring Stiffness)                

  • 角度弹簧阻尼(Angular Spring Dampening)                

,