[maya学习笔记(20)] 约束

本文介绍了三维动画制作中常用的约束技术,包括目标约束、方向约束、缩放约束等,并详细解释了父子链接与父子约束的区别。

目标约束


        用一个物体的位移属性,去控制另一个物体的旋转。

        先点中约束物体,点击shifit,在选择被约束物体,然后在约束菜单中选择目标。

        选中保持偏移,其余保持默认,然后添加。这样就成功了。

     (中心点:默认在圆锥中心)

         insert键,可以移动中心点。



方向约束


        通过一个物体的旋转控制另外一个物体的旋转。

 

        可以选择只约束某一轴,也可以全部。

        一般用法,驱动器控制骨骼旋转。

        


缩放约束


        先点击约束物体,再按住shift,点击被约束物体,约束菜单中点缩放约束。

        


父对象


        也就是点约束和方向约束的结合体,它既约束位移,也约束旋转。

        同理,点击约束物体,按shift点击被约束物体,约束菜单选择父对象。


父子链接


        子物体跟随父物体运动。

        先选择子物体,再按shif选中父物体,按P键即可。(和其他是反过来的)

        如果想取消,选中子物体,按shift+p。


父子约束


       同样,也是子物体随父物体运动。

       先选择父物体,然后再按shift选择被约束物体,


父子链接与父子约束区别


        1.单独移动子物体时,对于父子链接而言,子物体的运动与父物体没有任何关系。对于父子约束而言,就算子物体移动了,暂时变动了位置,再移动父物体,子物体还是回到原来的相对位置,就像它没有移动过一样。

        2.父子约束:允许多个物体控制一个物体  父子链接:只能有一个父对象,但一个父对象可以有多个子物体。


几何体约束


        将物体限制到曲线、曲面、表面上。

        


切线约束和法线约束


        一般都和几何体约束配合使用。效果是物体贴着物体的法线或切线方向运动。

       

极向量约束


       对物体是没有用的,主要用于IK手臂。

       先在骨架菜单,创建几个关节,然后选择IK控制柄工具。

       注意,在设置的时候,要选择第二种解算器:旋转平面解算器。极向量约束仅对该解算器起效。

       这时就可以利用极向量约束,用别的物体来控制关节运动了。


取消约束


      同时框选约束物体和被约束物体,点击约束菜单中的移除目标就可以了。

      当然也可以在大纲视图中选中约束删除。


修改受约束轴


     同样,同时框选约束物体和被约束物体,点击约束菜单中的修改受约束轴。


### 作用 父对象约束Maya中用于控制对象之间运动关系的重要工具。通过父对象约束,可以让一个对象(子对象)跟随另一个对象(父对象)的位置、旋转或缩放变化而变化。这在动画制作、角色绑定等方面非常有用。例如,在角色动画中,可以将角色的手指关节约束到手掌上,当手掌移动或旋转时,手指关节会相应地跟随运动,从而实现自然的手部动画效果。在场景布置中,也可以将一些道具约束到场景中的某个物体上,使道具随着该物体的移动而移动,方便管理和调整场景元素的位置关系。 ### 使用方法 在Maya中创建父对象约束的步骤如下: 1. 选择要作为子对象的物体。 2. 按住 `Shift` 键,再选择要作为父对象的物体。 3. 选择 `Animation`(动画)菜单,然后选择 `Constrain`(约束)> `Parent`(父对象约束)。 也可以使用快捷键 `Ctrl + P` 来快速创建父对象约束。 创建父对象约束后,可以在通道盒(Channel Box)中调整约束的属性,如权重、偏移等,以实现更精细的控制。例如,可以通过调整权重来控制子对象跟随父对象运动的程度,权重为1时,子对象完全跟随父对象运动;权重为0时,子对象不受父对象的影响。 ### 相关知识 - **约束类型**:父对象约束可以同时约束位置、旋转和缩放,也可以单独约束其中的某一项或几项。在创建约束时,可以在弹出的选项窗口中进行设置。 - **约束偏移**:可以为父对象约束设置偏移量,使子对象在跟随父对象运动的同时,保持一定的相对位置、旋转或缩放。偏移量可以在通道盒中进行调整。 - **多父对象约束**:一个子对象可以同时受到多个父对象的约束,通过调整每个父对象的权重,可以实现子对象在不同父对象之间的过渡运动。例如,在角色动画中,可以让角色的头部同时受到身体和另一个控制对象的约束,通过调整两个父对象的权重,实现头部在不同姿态之间的平滑过渡。 ```python # 以下是一个简单的Maya Python脚本示例,用于创建父对象约束 import maya.cmds as cmds # 创建两个球体作为示例对象 sphere1 = cmds.polySphere()[0] sphere2 = cmds.polySphere()[0] # 移动球体到不同位置 cmds.move(5, 0, 0, sphere2) # 创建父对象约束,让sphere2跟随sphere1运动 cmds.parentConstraint(sphere1, sphere2) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值