反应控制器是一种使参数对 3ds Max 中的其他任何参数的变化做出反应的程序控制器。通常,使用“反应管理器”对话框来执行涉及“反应控制器”的大部分设置。使用对话框来定义主对象(即控制其他对象的对象)以及每个主对象的任意数目的从属对象(即主控对象制的对象)。或者,可以使用“轨迹视图”或者“运动”面板(按照其他任何控制器)直接为从属对象指定“反应”控制器,然后使用“反应管理器”来指定主和其他参数。
“反应”控制器可分成五种不同的类型:“位置反应”、“旋转反应”、“Point3 反应”、“缩放反应”和“浮点型反应”。可以为场景中的任何设置动画的轨迹设置“反应”控制器。“反应”并不基于时间,但却基于场景中的其他变量,例如位置或者旋转。
例如,当对象靠近给定点时可以使用反应控制器打开灯。肌肉能像手臂骨骼旋转一样凸起。当球的 Z 位置接近地平面时,球能自动挤压。当脚跟从地面抬起时,脚能旋转。
给定事件能够触发粒子系统。变形目标百分比可由事件设置。
示例:要使球体位置根据长方体位置作出反应,请执行以下操作:
此过程显示了所有使用“反应”控制器的可选用方法。建议的工作流是,在“反应管理器”对话框中执行大部分设置:请参见示例:使用“反应管理器”对话框。
这将打开“反应管理器”对话框。“反应”列表显示球体的位置指定为从属位置,并存在主条目,但未向其指定任何运动。“反应”控制器使用主的运动来控制从属的任意数目。
这就进入了“拾取”模式,在此可以选择场景中任一对象的运动轨迹来充当主。
此时将打开一个弹出菜单。
“未指定”文本将替换为标记是“Box001/X 位置”的主轨迹。
此外,新状态 State001 将会显示在“反应”列表下面的“状态”列表中。
这是一个由“反应”控制器使用的控制机制的基础示例:对于每一个主/从属组合,可以指定通过主和从属轨迹值定义的任意数目的状态。当增加主时自动创建的第一个状态指定了当长方体在 X 轴上 -100 的位置时,球体将会在 (-100,0,50) 的位置。在此例中,可以用一个参数(X 轴框位置)控制三个参数(所有的三个轴上的球体位置)。通常更多使用的主/从属参数比为 1 比 1。
然后将创建第二个状态,它会告知球体如何随着长方体在多条轴上移动。
长方体移至动画轨迹的中点。球体保持不动。
此操作使用长方体和球体的当前位置创建一个新的状态 (State002)。
由于球体在它的主(长方体)的完全控制下,因此无法移动该球体。同样,使用状态栏的“坐标显示”字段无法改变球体位置。不过,使用“反应管理”的编辑工具可以改变球体位置。
该位置在“State02”下的“Sphere001/位置”行中更新。同时,“反应管理”图显示当主长方体的 X 位置变化时从属(球体)X 位置值及 Z 位置值的变化。像在“轨迹视图”一样,表格中的红色代表 X,绿色代表 Y,蓝色代表 Z。
当长方体在第 0 帧和第 50 帧之间移动时,球体上升到了第二状态下的指定位置。
对于第三和最终的状态,可以在主移动的后半段让从属沿着不同方向移动。
在第一个 50 帧上,球体在前两个状态之间移动,在动画的后半段,球体在第二和第三个状态之间移动。
总结此过程,展示了无论动画如何,球体仅会对长方体的 X 位置做出响应。
这将打开“动画”四元菜单。
该命令删除当前选择中所有动画关键点。
Y 和 Z 位置的任何变化对球体都没有任何影响。不过,不论 Y 和 Z 的位置如何,在 X 轴的 -100 和 100 之间移动长方体,将会产生“反应”控制器中指定球体位置的变化。
这一过程将显示“反应”控制器的强大功能。您可以查找另一个展示“反应管理器”其他方面的步骤:示例:使用“反应管理器”对话框。
指定“反应”控制器后,右键单击轨迹并选择“属性”,或选择“动画”“反应管理器”以打开“反应管理器”对话框。