查看: 1345|回复: 0
打印 上一主题 下一主题

maya 7.0 刚体和柔体-给刚体添加约束

[复制链接]

347

主题

1

听众

3111

积分

中级设计师

Rank: 5Rank: 5

纳金币
1147
精华
41

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2013-10-24 17:06:58 |只看该作者 |倒序浏览
maya 7.0 刚体和柔体-给刚体添加约束
刚体约束用于限制刚体于场景中某个位置或者另外一个刚体上,限制刚体的运动状态。当对场景中的一个物体使用约束时,系统会自动把它转换成刚体。 maya 中的刚体约束分为: nail( 钉 ) 约束、 pin( 链 ) 约束、 hige( 铰链 ) 约束、 spring( 弹簧 ) 约束和 barrier( 屏障 ) 约束。如图 11-15 所示的为用约束创建的球体碰撞效果。

20071030902684377801.jpg

图 11-15 刚体约束效果
nail 约束
nail 约束可以把刚体固定在场景中的某一个位置,它只对主动刚体起作用,而对被动刚体不起任何作用。运用刚体约束可以创建出吊起物体的效果,如图 11-16 所示。
下面是 nail 约束的使用方法和效果具体操作步骤如下:
(1) 创建一个新场景,添加一个圆柱体,把它从 x 轴旋转 90 ° ,然后在 z 轴上放大。结果如图 11-17 所示。

20071030902689077802.jpg

20071030902692177803.jpg

图 11-16 nail 约束效果 图 11-17 建立圆柱体
(2) 创建一个圆环,把它拉伸成基本的链环形。把圆环转过来放在棒的下方。如图 11-18 所示。
(3) 复制第 1 个圆环物体,绕 y 轴旋转 90 °,然后把它放好。这样重复 3 次以上,直到得到如图 11-19 所示的链子为止。
注意:
要确保环之间有一定距离 ( 即不使它们相互接触 ) 。否则建立刚体时将会出现渗透错误,并且模拟会停下来。

20071030902696877804.jpg

2007103090271577805.jpg

图 11-18 创建圆环 图 11-19 创建链
提示:
在建立了第 1 个环以后,移动并且旋转它,然后可以使用 duplicate 属性对话框中的 smart transform 选项完成其余的工作。每一个环都将自动的旋转并移动到位。
(4) 选中棒和第 1 个环,执行 soft/rigid bodies → create passive rigid body 命令。然后,选中其他所有的环,执行 soft/rigid bodies → create active rigid body 命令。在这些环仍被选中的前提下,在场景中加入重力场 ( 执行 fields → gravity 命令 ) 。播放动画时,将会看到这些环落下来并且互相反弹着,最后在 200 帧左右停了下来,如图 11-20 所示。

2007103090274677806.jpg

图 11-20 加入重力场
(5) 为刚体加入约束。选中第 1 个圆环,执行 soft/rigid bodies → create constraint 命令打开 constraint options 窗口,设置 constraint type 的类型为 nail ,如图 11-21 所示。
(6) 单击 create 按钮创建 nail 约束。在视图中可以看到 nail 约束处于圆环的原点位置,如图 11-22 所示。
(7) 单击播放按钮,会看到 nbil 约束的效果。

2007103090279377807.jpg

图 11-21 constraint options 窗口

20071030902712577808.jpg

图 11-22 约束的位置
pin 约束
pin 约束可以在某一确定的位置上将两个刚体连接在一起,连接的物体可以是两个主动刚体,也可以是一个主动刚体和被动刚体。
下面是建立 pin 约束的实例,具体操作步骤如下:
(1) 选中想要建立 pin 约束的两个刚体。
(2) 执行 soft/rigid bodies → create constraint □命令打开其参数对话框。
(3) 在 constraint type 下拉列表中选择 pin 选项。
(4) 如果要在刚体发生碰撞时,刚体之间能够互相渗透,则选中 interpenetrate 复选框。
(5) 如果要设置 pin 约束的位置,就选中 set initial position 复选框,然后在其下的 x 、 y 和 z 的文本框中输入 pin 约束的坐标位置即可。如果没有选中此复选框,系统将会在两个刚体的中间创建 pin 约束。
(6) 单击 create 按钮创建 pin 约束,结果如图 11-23 所示。

20071030902717177809.jpg

200710309027218778010.jpg

图 11-23 创建 pin 约束
hinge 约束
hinge 约束可以通过铰链沿着某个轴限制刚体的运动,例如,通过 hinge 约束可以创建门绕门轴旋转或钟表的摆动等物理现象。
用户可以在以下 3 个范围内创建 hinge 约束:
● 一个主动刚体或者被动刚体与场景中的某一位置。
● 两个主动刚体之间。
● 一个主动刚体和一个被动刚体之间。
打开 constraint options 对话框,设置 constraint type 的类型为 hinge 。
● interpenetrate :当刚体之间产生碰撞时,选中该复选框可使刚体之间能够相互穿透。
● initial position :该复选框用于设置 hinge 约束在场景中的位置,选中 set initial position 复选框,然后输入 x 、 y 和 z 的坐标数值即可。如果没有选中 set initial position 复选框,当为一个刚体创建约束时 hinge 约束将在场景中的坐标原点。当为两个刚体创建约束时, maya 会在两个刚体的中间点创建 hinge 约束。
● initial orientation :用户可以通过输入 x 、 y 和 z 的值来设置 hinge 约束的初始方向。在默认情况下, hinge 约束的初始方向为 z 轴,如图 11-24 所示。

200710309027265778011.jpg

图 11-24 默认的旋转方向
spring 约束
spring 约束主要用于模拟弹性绳索,可以创建为弹簧约束的对象比较广泛,主要包括以下 3 种:
● 一个主动刚体或者被动刚体与场景中的某一位置。
● 两个主动刚体。
● 一个主动刚体和一个被动刚体。
打开 constraint options 对话框,设置 constraint type 的类型为 spring 。
● interpenetrate :当刚体之间产生碰撞时,选中该复选框可使刚体之间能够相互 穿透。此选项处于非选中状态时,刚体之间不能互相穿透。
● initial position :该复选框用于设置 spring 约束在场景中的位置,选中 set initial position 复选框,然后输入 x 、 y 和 z 的坐标数值即可;如果没有选中 set initial position 复选框,当为一个刚体创建约束时 spring 约束将在场景中的坐标原点。当为两个刚体创建约束时, maya 会在两个刚体的中间点创建 hinge 约束。
● stiffness :设置弹簧约束的弹力,在同样距离的情况下,该数值越大,弹簧的弹力越大。
● damping :设置弹簧约束的阻尼力。阻尼力的强度与刚体的速度成正比,阻尼 力的方向和刚体速度的方向成反比。
● rest lenth :设置弹簧约束在静止时的长度。在默认的情况下,弹簧的静止长度和约长度相等。
barrier 约束
barrier 约束用于创建墙或地板等静止物体的效果,用户只能为一个主动刚体创建 barrier 约束,主动刚体碰撞到屏障约束时不会反弹。
打开 constraint options 对话框,设置 constraint type 的类型为 barrier 。
● initial position :该复选框用于设置 barrier 约束在场景中的位置,选中 set initial position 复选框,然后输入 x 、 y 和 z 的坐标数值即可;如果没有选中 set initial position 复选框,则系统会在场景的原点创建 barrier 约束。
● initial orientation :用户可以通过输入 x 、 y 和 z 的值来设置 barrier 约束的初始方向。在默认情况下, barrier 约束的初始方向为 xz 平面。
更多教程尽在纳金网maya论坛


分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-27 23:31 , Processed in 1.543056 second(s), 30 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部