“参数关联”对话框允许对连线参数的关系进行定义。在此对话框中,可以创建对象参数间新的双向的控制关系,编辑已存在的关系,并创建或编辑定义参数关系的表达式。
只有可以设置动画的参数才可以关联。子对象在关联之前必须先设置动画,例如顶点。
参数关联可以用于建立从操纵器和自定义属性到对象、材质和修改器之间的联系。
示例:要使用连线参数的表达式,请执行以下操作:
此时,将会出现一个橡皮筋似的虚线,它连接顶点和鼠标光标。
现在球体的位置和长方体的长度相关联。
注意当球体在视口中移动时,长方体的长度会改变。使用 abs() 确保长方体不会出现负长度。
要从一个主参数中控制几个从属参数,请执行以下操作:
可以重复此循环来建立所需的足够多的从属参数。结果会形成一个“扇形”的关联参数,这样可以在改变主参数时一次控制所有的从属参数。
要创建一个连线参数的链,请执行以下操作:
可以重复此循环,持续将从属参数改为主参数任意多次。结果会形成一个“链形”的连线参数,这样在修改原始主参数时每个从属参数都会与参数队列中的下一个参数保持一个持续的关系。
要编辑场景节点之间的关联参数,请执行以下操作:
如果创建或继承包含关联参数的场景,并且要编辑特定关系,您可以使用“图解视图”来查找关系并在“参数关联”对话框中将其打开。
“图解视图”将打开,并显示场景节点和“显示”浮动框。
节点之间的任何连线显示为与“参数关联”按钮颜色相同的线。
关联关系将显示在工具提示中。
这将打开“参数关联”对话框,同时高亮显示关联参数、并将当前设置置于活动状态。
在单个场景节点中编辑关联参数:
如果参数是在场景节点中关联,例如对象相对于修改器参数的位置应用到对象,则可能不容易在“图解视图”中看到关联。但是,您可以使用其他显示选项来显示关联。
“图解视图”将打开,并显示场景节点和“显示”浮动框。
未发生任何变化,因为参数关联是在对象内部发生的。其内部结构需要展开才能看到关联。
要让“图解视图”显示这些连线,需要在“实体”组中启用下列“显示”浮动框开关:
下图描绘的是对象的位置和半径之间的关联:
该对话框显示两个树视图,这两个视图显示场景中所有可见对象的动画参数。当前选中对象的名称会出现在顶端。树视图在场景中显示对象并允许选中并关联所有场景中的对象和场景本身的动画参数。
树视图用带有颜色的代码来显示已经存在的关联。对其指定的带有关联控制器的参数用红色显示(或者是双向关联之一,或者是单项关联的从属参数)。当选中一个关联控制器参数,所有直接关联于它的参数都在另一个树视图中以绿色文本显示。在任何一种情况下,如果参数是在一个没有展开的轨迹内部,该关闭的轨迹会以红色或绿色显示,可以展开该轨迹来找到连线。
以下是树视图上面的按钮:
在“轨迹视图”中,动画子控制器在主参数的轨迹中显示为嵌套轨迹。它的值直接驱动主参数值并与之匹配。如果子控制器可设置关键帧(当首先建立的是双向关联时,这是默认设置),可以通过调整任意一个连线参数来为其设置关键帧。这意味着如果通过调整非主参数来将关联对定义为关键帧,动画子控制器中的关键帧值会由主参数传递表达式确定。既然关联对可以通过任意的参数设置动画,选择主参数基本上只是一个约定。
在树视图之间是三个方向控制按钮。每次只能选择其中的一个按钮。这些按钮确定控制的方向,无论是单向还是双向的:
“连接/更新”按钮会改变自己的标签,具体取决于单击该按钮后是向之前的未连线参数添加新关联(连接),还是改变现有关联表达式或方向(更新)。对存在的关联进行改变仅在单击“更新”时应用。
当所选参数之间存在已有关联时启用“断开”按钮。此操作会移除关联控制器并用主参数的动画轨迹(如果为双向)或用默认的控制器(如果为单向)替代它们。
参数树下面是传递表达式窗口。这些表达式确定每个参数的更改会对其他参数产生的影响。通常,一个表达式是另一个表达式的反转。(您可以为不互相反转的两个参数输入表达式,但不鼓励这样做,因为这种情况下关联的结果将因最先更改的参数而异。)
当您第一次连线参数时,默认的表达式是参数间简单的一对一链接。可在这些窗口中编辑表达式。有效表达式会为其参数产生正确类型的结果。例如,如果将一个参数(比如说高度,包含一个浮点值)与另一个参数(比如说位置,包含一个 Point3 值)相链接,表达式必须包含产生相同类型输出值的转化。
有关表达式语法的详细信息,请参见 MAXScript 帮助中的“脚本控制器”主题。
对于单向关联,由于没有为其指定关联控制器,因此控制参数的表达式窗口不可用。
对于双向关联,将启用两个传递表达式窗口。