下面介绍一下MAYA各种约束的作用和属性面板里的一些参数。通过各种约束的使用和对这些参数的设置,我们可以得到一些不同的约束效果。
点约束点约束使对象向着并跟随对象的位置或者几个对象的平均位置而移动。此功能用于使一个对象匹配其他对象的运动。
也可以使用点约束对一个对象进行动画设置,使其跟随其他一系列的对象。
下面是属性面板里的一些参数
保持偏移(Maintain Offset)
保留受约束对象的原始平移(约束之前的状态)和相对平移。使用该选项可以保持受约束对象之间的空间关系。
偏移(Offset)
为受约束对象指定相对于目标点的偏移位置(平移 X、Y 和
Z)。请注意,目标点是目标对象的旋转枢轴的位置或目标对象的旋转枢轴的平均位置。默认值均为 0。
动画层(Animation Layer)
允许您选择要向其中添加点约束的动画层。
将层设置为覆盖(Set Layer To Override)
启用时,在“动画层”(Animation
Layer)下拉列表中选择的层会在将约束添加到动画层时自动设定为覆盖模式。这是默认模式,也是建议使用的模式。禁用时,在添加约束时层模式会设定为相加模式。
约束轴(Constraint Axes)
确定是否将点约束限制到特定轴(X、Y、Z)或“全部”(All)轴。如果选中“全部”(All),“X”、“Y”和“Z”框将变暗。
权重(Weight)
指定目标对象可以影响受约束对象的位置的程度。使用滑块可在 0.0000 到 10.0000 之间选择值。默认值为
1.0000。
目标约束目标约束可约束某个对象的方向,以使该对象对准其他对象。目标约束的典型使用包括使灯光或摄影机对准某个对象或一组对象。在角色设置中,目标约束的典型使用是设置用于控制眼球转动的定位器。
下面是属性面板里的一些参数
保持偏移(Maintain Offset)
保持受约束对象的原始(约束之前的状态)、相对转换和旋转。使用该选项可以保持受约束对象之间的空间和旋转关系。
偏移(Offset)
指定受约束对象相对于目标点的偏移位置(平移 X、Y 和
Z)。请注意,目标点是单个目标对象的旋转枢轴所在的位置,或多个目标对象的旋转枢轴的平均位置。所有默认值均为 0。
目标向量(Aim Vector)
指定目标向量相对于受约束对象的局部空间的方向。目标向量将指向目标点,强制受约束对象相应地确定其本身的方向。默认值指定对象在 X
轴正半轴的局部旋转与目标向量对齐,以指向目标点(1.0000,0.0000,0.0000)。
上方向向量(Up Vector)
指定上方向向量相对于受约束对象的局部空间的方向。默认值指定对象在 Y
轴正半轴的局部旋转与上方向向量对齐。默认情况下,上方向向量也会相应地尝试与世界上方向向量对齐。默认情况下,世界上方向向量会进而指向世界空间的正
Y 轴正半轴的方向(0.0000,1.0000,0.0000)。
如果定义上方向向量指向与目标向量相同的方向,则受约束对象将具有运动历史相关性。
世界上方向向量(World Up Vector)
指定世界上方向向量相对于场景的世界空间的方向。由于默认情况下 Maya 的世界空间为“Y
轴向上”,因此世界上方向向量默认指向世界空间的 Y 轴正轴的方向(0.0000,1.0000,0.0000)。
世界上方向对象(World Up Object)
指定上方向向量尝试对准指定对象的原点,而不是与世界上方向向量对齐。忽略世界上方向向量。上方向向量尝试对准其原点的对象称为世界上方向向量。可通过
aimConstraint MEL 命令指定世界上方向对象(使用 -wuo
标志)。如果未指定世界上方向对象,则上方向向量会尝试对准场景的世界空间的原点。
动画层(Animation Layer)
可用于选择要添加目标约束的动画层。
将层设置为覆盖(Set Layer To Override)
启用时,在“动画层”(Animation
Layer)下拉列表中选择的层会在将约束添加到动画层时自动设定为覆盖模式。这是默认模式,也是建议使用的模式。禁用时,在添加约束时层模式会设定为相加模式。
约束轴(Constraint Axes)
确定是否将目标约束是否限于特定轴(“X”、“Y”、“Z”)或“全部”(All)轴。选中“所有”(All)时,“X”、“Y”和“Z”框将变暗。
权重(Weight)
指定受约束对象的方向受目标对象影响的程度。使用滑块选择 0.0000 和 10.0000 之间的值。默认值为 1.0000。
方向约束方向约束将一个对象的方向与一个或多个其他对象相匹配。此约束可用于同时确定几个对象的方向。例如,为一个角色的头部设置动画,然后根据刚刚设置动画的头部约束所有其他角色的头部,可以使一组角色同时朝向同一方向。
下面是属性面板里的一些参数
保持偏移(Maintain Offset)
保持受约束对象的原始(在约束之前的状态)、相对旋转。使用该选项可以保持受约束对象之间的旋转关系。
偏移(Offset)
为受约束对象指定相对于目标点的偏移位置(平移 X、Y 和
Z)。请注意,目标点是目标对象的旋转枢轴的位置,或者是目标对象的旋转枢轴的平均位置。默认值全部为 0。
动画层(Animation Layer)
可用于选择要添加方向约束的动画层。
将层设置为覆盖(Set Layer To Override)
启用时,在“动画层”(Animation
Layer)下拉列表中选择的层会在将约束添加到动画层时自动设定为覆盖模式。这是默认模式,也是建议使用的模式。禁用时,在添加约束时层模式会设定为相加模式。
约束轴(Constraint Axes)
决定方向约束是否受到特定轴(“X”、“Y”、“Z”)的限制或受到“全部”(All)轴的限制。选中“全部”(All)时,“X”、“Y”和“Z”框将暗显。
权重(Weight)
指定受约束对象的位置可能会受目标对象影响的程度。使用滑块选择从 0.0000 到 10.0000 的值。默认值为
1.0000。
缩放约束缩放约束可以将一个缩放对象与另外一个或多个对象相匹配。该约束在同时缩放多个对象时非常有用。例如,可以通过为一个字符的头制作动画,然后将其他所有字符的头约束为您已制作动画的头,从而同时将一组字符全部都设置为相同方向。
受约束对象是指其缩放受一个或多个目标对象的缩放驱动的对象。一个或多个目标对象的缩放称为目标缩放。
下面是属性面板里的一些参数
保持偏移(Maintain Offset)
保留原点(约束之前的状态),相对缩放受约束对象。使用此选项可以保持受约束对象之间的比例关系。
偏移(Offset)
指定受约束对象相对于目标点的偏移位置(平移 X、Y 和
Z)。请注意,目标点是目标对象的旋转枢轴,或是目标对象旋转枢轴的平均位置。默认值均为 0。
动画层(Animation Layer)
用于选择要在其上添加缩放约束的动画层。
将层设置为覆盖(Set Layer To Override)
启用时,在“动画层”(Animation
Layer)下拉列表中选择的层会在将约束添加到动画层时自动设定为覆盖模式。这是默认模式,也是建议使用的模式。禁用时,在添加约束时层模式会设定为相加模式。
约束轴(Constraint Axes)
确定是否将缩放约束限制到特定枢轴 (“X”、“Y”、“Z”)
或“全部”(All)枢轴。选中“全部”(All)时,“X”、“Y”和“Z”框将暗淡。
权重(Weight)
指定受约束对象的缩放可以对目标对象产生的影响。使用滑块选择介于 0.0000 到 10.0000 之间的值。默认值为
1.0000。
父对象约束使用父约束,您可以相关一个对象的位置—平移和旋转到另一个对象,以便这些对象的行为就像具有多个目标父对象的父-子关系。对象的移动也会受多个对象平均位置的影响。
当父约束被应用到一个对象时,受约束对象不会成为约束对象的层次或组的一部分,而是保持独立,同时表现得像是目标的子对象一样。约束对象也称为目标对象。
带父约束的对象不会表现得象带点和方向约束的对象那样。当使用了父约束后,旋转目标对象将影响受约束对象沿世界轴的旋转。当使用了点和方向约束后,旋转目标对象将影响受约束对象沿其局部轴的旋转。如下图所示。
下面是属性面板里的一些参数
保持偏移(Maintain Offset)
保留受约束对象的原始状态(约束之前的状态)、相对平移和旋转。使用该选项可以保持受约束对象之间的空间和旋转关系。
动画层(Animation Layer)
使用该选项可以选择要添加父约束的动画层。
将层设置为覆盖(Set Layer To Override)
启用时,在“动画层”(Animation
Layer)下拉列表中选择的层会在将约束添加到动画层时自动设定为覆盖模式。这是默认模式,也是建议使用的模式。禁用时,在添加约束时层模式会设定为相加模式。
约束轴(Constraint Axes)
决定父约束是受特定轴(“X”、“Y”、“Z”)限制还是受“全部”(All)轴限制。选中“全部”(All)时,“X”、“Y”和“Z”框将暗显。
权重(Weight)
仅当存在多个目标对象时,权重才有用。
几何体约束几何体约束将对象限制到某个 NURBS 曲面、NURBS
曲线或多边形曲面(网格)。如果还希望受约束对象将它自己定向到目标对象的曲面,请使用法线约束。
权重(Weight)
指定受约束对象的位置受目标对象影响的程度。使用滑块选择 0.0000 到 10.0000 的值。默认值为 1.0000。
法线约束法线约束可约束对象的方向,以使其与 NURBS
曲面或多边形面(网格)的法线向量对齐。让对象在具有唯一、复杂形状的曲面上移动时,法线约束很有用。如果没有法线约束,在曲面上移动对象或设置其动画可能会很乏味且耗时。例如,可能需要让一滴眼泪沿角色的脸落下。可以将眼泪约束到脸的曲面,而不是直接设置眼泪的动画。
下面是属性面板里的一些参数
权重(Weight)
指定受约束对象的方向在多大程度上受目标对象影响。使用滑块在 0.0000 到 10.0000 之间选择值。默认值为
1.0000。
目标向量(Aim Vector)
指定目标向量相对于受约束对象局部空间的方向。目标向量与目的向量对齐,强制受约束对象相应确定其自身的方向。默认情况下指定对象的局部旋转正
X 轴与目标向量对齐,以便与目的向量 (1.0000, 0.0000, 0.0000) 对齐。
上方向向量(Up Vector)
指定上方向向量相对于受约束对象局部空间的方向。默认情况下指定对象的局部旋转正 Y
轴与上方向向量对齐。而默认情况下,上方向向量会尝试与世界上方向向量对齐。另外,默认情况下,世界上方向向量将指向世界空间的正 Y 轴
(0.0000, 1.0000, 0.0000)的方向。
如果将上方向向量定义为指向与目标向量相同的方向,受约束对象将与运动历史存在相关性。
世界上方向向量(World Up Vector)
指定世界上方向向量相对于场景世界空间的方向。由于默认情况下 Maya 的世界空间是“Y 轴向上”,因此默认世界上方向向量指向世界空间正
Y 轴的方向 (0.0000, 1.0000, 0.0000)。
世界上方向对象(World Up Object)
指定上方向向量尝试对准指定对象的原点,而不是与世界上方向向量对齐。世界上方向向量将被忽略。上方向向量尝试对准其原点的对象称为世界上方向对象。
通过使用 -wuo 标志,可以指定具有normalConstraint MEL
命令的世界上方向对象。如果未指定世界上方向对象,上方向向量将尝试对准场景世界空间的原点。
切线约束切线约束可约束对象的方向,以使某个对象沿曲线移动时,该对象始终指向曲线的方向。曲线提供对象运动的路径,对象会调整自身的方向以指向曲线。切线约束用于使对象跟随曲线的方向,例如过山车会跟随轨迹的方向。
下面是属性面板里的一些参数
权重(Weight)
指定受约束对象的方向可受目标对象影响的程度。使用滑块选择介于 0.0000 和 10.0000 之间的值。默认值为
1.0000。
目标向量(Aim Vector)
指定目标向量相对于受约束对象的局部空间的方向。目标向量将与目标向量对齐,强制受约束对象相应地自行确定其方向。默认情况下,指定对象的局部旋转正
X 轴与要与目标向量对齐的目标向量对齐 (1.0000, 0.0000, 0.0000)。
上方向向量(Up Vector)
指定上方向向量相对于受约束对象的局部空间的方向。默认情况下,指定对象的局部旋转正 Y
轴将与上方向向量对齐。反过来,默认情况下,上方向向量将尝试与世界上方向向量对齐。另外,默认情况下,世界上方向向量将指向世界空间的正 Y
轴方向 (0.0000, 1.0000, 0.0000)。
如果定义上方向向量与目标向量指向同一方向,则受约束对象将依赖于运动历史。
世界上方向向量(World Up Vector)
指定世界上方向向量相对于场景的世界空间的方向。由于默认情况下 Maya 的世界空间为“Y
轴向上”,因此默认世界上方向向量将指向世界空间的正 Y 轴方向 (0.0000, 1.0000, 0.0000)。
世界上方向对象(World Up Object)
指定上方向向量尝试对准指定对象的原点,而不是与世界上方向向量对齐。将忽略世界上方向向量。上方向向量尝试对准其原点的对象称为世界上方向对象。
您可以使用 tangentConstraint MEL 命令指定世界上方向对象(使用 -wuo
标志)。如果未指定任何世界上方向对象,则上方向向量将尝试对准场景的世界空间的原点。
多边形上的点约束通过多边形上的点约束,可以将对象约束到网格,以便在网格变形时受约束对象贴附于曲面上的某个点。您可以将对象约束到整个网格,也可以约束到特定的顶点、面或边。使用该约束可以创建各种效果,例如外套变形时外套上的纽扣仍保留在原位。
下面是属性面板里的一些参数
动画层(Animation Layer)
允许您选择一个向其添加多边形上的点约束的动画层。约束轴(Constraint Axes)
确定多边形上的点约束是限制为特定轴(“X”、“Y”、“Z”)还是“全部”(All)轴。
权重(Weight)
指定受约束对象的位置受网格影响的程度。使用滑块选择 0.0000 到 10.0000 之间的值。默认值为 1.0000。
最近点约束最近点约束提供了网格、NURBS
曲面或曲线相对输入位置的最近点的快速计算方法。可以简单地使用约束计算和查看最近点信息,或使用约束创建并约束定位器至网格、曲面或曲线,以标记最近点。
下面是属性面板里的一些参数
打开“选项上的最近点”(Closest Point On Options)窗口。该窗口包含以下选项:
输入位置定位器(Input Position Locator)
处于启用状态时,会在默认的输入位置创建定位器。默认的输入位置为原点 (0, 0, 0)。
处于禁用状态时,不创建任何输入定位器,您可以通过设置
closestPointOnMesh、closestPointOnSurface 或 nearestPointOnCurve
节点的“输入位置”(In Position)属性来手动设定输入位置。
最近位置定位器(Closest Position Locator)
处于启用状态时,会在网格、曲面或曲线上创建定位器,以指示相对于输入位置的最近点。
极向量约束极向量约束使极向量的末端移动至并跟随一个对象的位置,或几个对象的平均位置。
在角色设置中,手臂关节链的 IK 旋转平面控制柄的极向量经常约束到放置在角色后面的定位器。
通常,您会希望约束极向量,从而当您操纵 IK
旋转平面控制柄时,关节链不会发生意外翻转。因为控制柄向量接近或与极向量相交时,会发生翻转,应该约束极向量,使控制柄向量不会与其交叉。
下面是属性面板里的一些参数
权重(Weight)
指定受约束极向量的结束位置受目标对象影响的程度。使用滑块选择 0.0000 到 10.0000 之间的值。默认值为
1.0000。