编辑挤压非线性变形器
 
 
 
提示

“通道盒”(Channel Box)中调整“展开”(Expand)“开始平滑度”(Start Smoothness)“结束平滑度”(End Smoothness)

使用控制柄操纵器编辑挤压变形器

  1. 选择挤压变形器节点(默认名称:squashn)。
  2. 选择“显示操纵器工具”(Show Manipulator Tool)(默认快捷方式:t 键)。
  3. 在场景中,选择挤压变形器控制柄上的其中一个操纵器。

    使用挤压变形器控制柄上的操纵器可以编辑属性。

  4. 按住鼠标中键 () 并拖动可按交互方式进行编辑。请注意,“通道盒”(Channel Box)会更新要更改的值。

通过移动、旋转或缩放控制柄来编辑挤压变形器

  1. 选择挤压变形器控制柄节点(默认名称:squashnHandle)。
  2. 移动(平移)、旋转或缩放控制柄以更改变形的效果。
  3. 通过按 键(Linux 和 Windows)或 键 (Mac OS X),移动该枢轴点,然后再次按 键或 键来移动或旋转控制柄枢轴点。

    请记住,可以访问变形器控制柄的局部轴(“显示 > 变换显示 > 局部旋转轴”(isplay > Transform Display > Local Rotation Axes))、旋转和缩放枢轴(“显示 > 变换显示 > 旋转枢轴”(Display > Transform Display > Rotate Pivots)“缩放枢轴”(Scale Pivots))以及选择控制柄(“显示 > 变换显示 > 选择控制柄”(Display > Transform Display > Selection Handle))。

使用“通道盒”(Channel Box)编辑挤压变形器

  1. 选择挤压变形器节点(默认名称:squashn)。

    一种选择挤压变形器节点的快速方法是,选择要变形的对象,然后从“通道盒”(Channel Box)(在“输入”(INPUTS)下方)中挤压变形器节点的历史中选择该节点。

    可以使用“通道控制”(Channel Control)编辑器(选择“窗口 > 常规编辑器 > 通道控制(Window > General Editors > Channel Control)”)控制在“通道盒”(Channel Box)中会将哪些属性列出为可设置关键帧的属性(通道)。

  2. 单击要编辑的通道的名称。
  3. 在场景中,单击鼠标中键 (),并向左或向右移动鼠标。通过移动鼠标,以交互方式更改选定通道的值。请注意,移动鼠标时,按 键将提供较精细的控制,而按 键将提供较粗略的控制。

删除挤压变形器

  1. 选择“挤压”(Squash)变形器控制柄。
  2. 选择“编辑 > 删除(Edit > Delete)”或使用默认快捷方式 键(Linux 或 Windows)或 键 (Mac OS X)。

    会将挤压变形器控制柄、挤压变形器控制柄形状和挤压变形器节点全部删除。但是,该对象仍然有调整节点可作为输入节点,因此将保留任何可能所做的调整。此外,请注意不会删除构造变形的求值的各种输入节点。

使用属性编辑器编辑挤压变形器

  1. 选择挤压变形器节点(默认名称:squashn)。
  2. 通过选择“窗口 > 属性编辑器(Window > Attribute Editor)”或使用默认快捷方式 +a,打开“属性编辑器”(Attribute Editor)
  3. 编辑属性。

    请参见挤压

挤压变形器示例

将球体挤压到地面上

默认情况下,Maya 将非线性变形器控制柄放置在要变形的对象的中心。例如,创建一个球体并为其创建一个挤压变形器后,Maya 会将挤压变形器控制柄放置在该球体的中心。将会相对于球体的中心进行变形。如果要靠着地面挤压球,可以调整挤压变形器的属性,并移动挤压变形器控制柄以使变形相对于球体与地面接触的位置。通常,可以进行这些调整以便可以产生相对于球体内部或外部的任何位置的挤压效果。

设置球体和变形器

  1. 创建基本体 NURBS 球体。
  2. 按数字键 3 可提高显示分辨率。
  3. 移动球体以使其位于透视视图中的栅格上。
  4. 为球体创建挤压变形器。

编辑变形器

  1. 通过设定 squash1 的属性来编辑挤压变形器,如下所示:

    下限(Low Bound):0

    上限(High Bound):0.75

  2. 移动变形器控制柄以使下边界是该球体与地面接触的位置。

靠着地面挤压球体

  1. 现在,在“通道盒”(Channel Box)中,更改“因子”。

    会发生相对于球体的底部(球体与地面接触的位置)的挤压变形。

反弹球设置

可以使用挤压变形器来创建挤压和拉伸效果。本示例显示如何可以为反弹球动画设置球。

使用挤压控件创建 NURBS 球体

  1. 执行上一个示例。
  2. 将 squash1 的“因子”(Factor)属性设定回到 0。

为拉伸控件创建变形器

  1. 为球体创建另一个挤压变形器,以提供拉伸控件。使用默认的创建选项。

    squash1 变形器提供了球落在地面上时所发生的挤压。刚创建的变形器 (squash2) 将提供球在飞行中时将发生的拉伸。

定义球

  1. 将球体 (nurbsSphere1) 和变形器控制柄(squash1Handle 和 squash2Handle)分组。
  2. 重命名该组球。
  3. 打开“通道控制”(Channel Control)窗口(“窗口 > 常规编辑器 > 通道控制(Window > General Editors > Channel Control)”),然后将下列属性设定为“不可设置关键帧”(Non Keyable)
    • 缩放 X(scaleX)缩放 Y(scaleY)缩放 Z(scaleZ)
    • 可见性(visibility)

    现在“通道盒”(Channel Box)仅列出球的下列可设置关键帧的属性:“平移 X”(Translate X)“平移 Y”(Translate Y)“平移 Z”(Translate Z)“旋转 X”(Rotate X)“旋转 Y”(Rotate Y)“旋转 Z”(Rotate Z)

  4. 关闭“通道控制”(Channel Control)窗口。

    现在将为球添加两个属性以进行挤压和拉伸。

  5. 选定球后,请选择“修改 > 添加属性(Modify > Add Attribute)”。
    • 添加名为 flyStretch 的可设置关键帧属性,并且“最小值/最大值”(Min/Max Values)设置如下:“最小值”(Minimum)为 0,“最大值”(Maximum)为 10,“默认”(Default)为 0。
    • 添加名为 landSquash 的可设置关键帧属性,并且“最小值/最大值”(Min/Max Values)设置如下:“最小值”(Minimum)为 0,“最大值”(Maximum)为 10,“默认”(Default)为 0。
  6. 关闭“添加属性”(Add Attribute)窗口。

为拉伸设置驱动者和受驱动关键帧

  1. 打开“设置受驱动关键帧”(Set Driven Key)窗口(动画 > 设置受驱动关键帧 > 设置(Animate > Set Driven Key > Set)> )。
  2. 将球加载为驱动者,选择“flyStretch”属性,然后将该属性设定为 0。
  3. 将 squash2 加载为受驱动,选择“factor”属性,然后将该属性设定为 0。
  4. 单击“关键帧”(Key)
  5. 将球的“flyStretch”属性设定为 10。
  6. 将 squash2 的“factor”属性设定为 0.6。
  7. 单击“关键帧”(Key)

为挤压设置驱动者和受驱动关键帧

  1. 打开“设置受驱动关键帧”(Set Driven Key)窗口(如果该窗口尚未打开)。
  2. 将球加载为驱动者,选择“landSquash”属性,然后将该属性设定为 0。
  3. 将 squash1 加载为受驱动,选择“factor”属性,然后将该属性设定为 0。
  4. 单击“关键帧”(Key)
  5. 将球的“landSquash”属性设定为 10。
  6. 将 squash1 的“factor”属性设定为 -2。
  7. 单击“关键帧”(Key)
  8. 单击“关闭”(Close)来关闭编辑器。

    现在,该球已经准备好用于具有挤压和拉伸效果的反弹球动画了。

设置球的动画

现在,已经为动画设置该球。请尝试为球反弹创建一个动画。包括球在飞行中时的拉伸效果和球撞击地面时的挤压效果。例如,动画可能看起来与下列图像有类似之处。

这些图像仅显示反弹球的一个简单示例。开发反弹球的动画时,请尝试看看可以为球的移动提供多少“角色”。