使用 MAXScript 自定义 MCG 工具

和其他所有工具一样,使用 MCG 构建的工具也是脚本化插件。通过将 MAXScript 添加到工具的“自定义 UI”属性,可以对其进行自定义和扩展。这允许 MCG 工具执行脚本化插件能够执行的所有操作。

每次计算(编译)图形时,“自定义 UI”属性的内容都会自动插入工具的 .ms 文件。这些内容插入生成的大部分代码(用于定义局部变量、定义图形的参数块和处理事件)之后、用于计算插件实例和更新场景的主要更新处理程序之前。

这样一来,您可以在“自定义 UI”属性中重新定义其中的某些部分,以此覆盖生成的大部分代码。稍后出现在插件文件中的定义将替代先前的定义。例如,您可以扩展现有事件处理程序、定义新事件处理程序(例如,针对鼠标动作)并添加参数块等。

几乎生成的所有 MAXScript 均可覆盖。但用于不同图形类型的主要计算处理程序例外:

但是,在发生这些事件时,您可以通过定义 PreInvokeMethodPostInvokeMethod 函数来修改工具,使其运行自定义 MAXScript。主要计算处理程序将调用这些函数(如果已定义)。

请注意,仅当“自定义 UI”属性为空时,才会自动生成默认卷展栏。如果使用“自定义 UI”属性中的 MAXScript 扩展 MCG 工具,则必须定义自己的自定义卷展栏或恢复默认卷展栏。