Maya4.0刚体和柔体-给刚体添加约束 Pin约束可以在某一确定的位置上将两个刚体连接在一起,连接的物体可以是两个主动刚体,也可以是一个主动刚体和被动刚体。 下面是建立Pin约束的实例,具体操作步骤如下: (1)选中想要建立Pin约束的两个刚体。 (2)执行Soft/RigidBodies→CreateConstraint□命令打开其参数对话框。 (3)在ConstraintType下拉列表中选择Pin选项。 (4)如果要在刚体发生碰撞时,刚体之间能够互相渗透,则选中Interpenetrate复选框。 (5)如果要设置Pin约束的位置,就选中SetInitialPosition复选框,然后在其下的X、Y和Z的文本框中输入Pin约束的坐标位置即可。如果没有选中此复选框,系统将会在两个刚体的中间创建Pin约束。 (6)单击Create按钮创建Pin约束,结果如图11-23所示。
Pin约束
Hinge约束
Hinge约束可以通过铰链沿着某个轴限制刚体的运动,例如,通过Hinge约束可以创建门绕门轴旋转或钟表的摆动等物理现象。
用户可以在以下3个范围内创建Hinge约束:
●一个主动刚体或者被动刚体与场景中的某一位置。
●两个主动刚体之间。
●一个主动刚体和一个被动刚体之间。
打开ConstraintOptions对话框,设置ConstraintType的类型为Hinge。
●Interpenetrate:当刚体之间产生碰撞时,选中该复选框可使刚体之间能够相互穿透。
●InitialPosition:该复选框用于设置Hinge约束在场景中的位置,选中SetInitialPosition复选框,然后输入X、Y和Z的坐标数值即可。如果没有选中SetInitialPosition复选框,当为一个刚体创建约束时Hinge约束将在场景中的坐标原点。当为两个刚体创建约束时,Maya会在两个刚体的中间点创建Hinge约束。
●InitialOrientation:用户可以通过输入X、Y和Z的值来设置Hinge约束的初始方向。在默认情况下,Hinge约束的初始方向为Z轴,如图11-24所示。
Spring约束
Spring约束主要用于模拟弹性绳索,可以创建为弹簧约束的对象比较广泛,主要包括以下3种:
●一个主动刚体或者被动刚体与场景中的某一位置。
●两个主动刚体。
●一个主动刚体和一个被动刚体。
打开ConstraintOptions对话框,设置ConstraintType的类型为Spring。
●Interpenetrate:当刚体之间产生碰撞时,选中该复选框可使刚体之间能够相互穿透。此选项处于非选中状态时,刚体之间不能互相穿透。
●InitialPosition:该复选框用于设置Spring约束在场景中的位置,选中SetInitialPosition复选框,然后输入X、Y和Z的坐标数值即可;如果没有选中SetInitialPosition复选框,当为一个刚体创建约束时Spring约束将在场景中的坐标原点。当为两个刚体创建约束时,Maya会在两个刚体的中间点创建Hinge约束。
●Stiffness:设置弹簧约束的弹力,在同样距离的情况下,该数值越大,弹簧的弹力越大。
●Damping:设置弹簧约束的阻尼力。阻尼力的强度与刚体的速度成正比,阻尼力的方向和刚体速度的方向成反比。
●RestLenth:设置弹簧约束在静止时的长度。在默认的情况下,弹簧的静止长度和约长度相等。
Barrier约束
Barrier约束用于创建墙或地板等静止物体的效果,用户只能为一个主动刚体创建Barrier约束,主动刚体碰撞到屏障约束时不会反弹。
打开ConstraintOptions对话框,设置ConstraintType的类型为Barrier。
●InitialPosition:该复选框用于设置Barrier约束在场景中的位置,选中SetInitialPosition复选框,然后输入X、Y和Z的坐标数值即可;如果没有选中SetInitialPosition复选框,则系统会在场景的原点创建Barrier约束。
●InitialOrientation:用户可以通过输入X、Y和Z的值来设置Barrier约束的初始方向。在默认情况下,Barrier约束的初始方向为XZ平面。