有两种 MEL 程序可供您用于从被引用文件上的“锁定”(Lock)选项中排除属性。一种程序用于排除特定的单个属性,而另一种程序用于排除具有指定节点类型的所有属性。可以在 Maya 安装目录的 scripts\others 文件夹中找到这些 MEL 程序。以下部分介绍如何使用这些程序。
该示例介绍了如何创建自己的 MEL 程序,以指定要从文件引用锁定操作中排除的属性。该示例中提供的 MEL 程序与 Maya 附带的程序相同。
global proc string[] getLockReferenceExcludedAttributes() { // Return a string array containing a list of attributes // to be skipped during locking of a referenced file. The // listed attributes locked state will remain the same as // in the referenced file. string $lockReferenceExcludedAttributes[]; $lockReferenceExcludedAttributes[0] = "visibility"; return $lockReferenceExcludedAttributes; }
根据需要,添加或移除任何 $lockReferenceExcludedAttributes[n] 行,以使用与上述示例相同的语法指定要排除的属性。确保数组索引 [n] 是连续的。
如果使用与 Maya 分发的默认名称相同的名称命名该 MEL 文件,“锁定”选项将在下次启动 Maya 时,请使用该新自定义脚本来锁定文件引用。
有关源 MEL 脚本和使用常用 MEL 程序的详细信息,请参见 MEL 和表达式。
该示例介绍如何创建自己的 MEL 程序,以按节点类型指定要排除的属性。该示例中提供的 MEL 程序与 Maya 附带的程序相同。
global proc string[] getLockReferenceExcludedNodeTypes() { // Return a string array containing a list of node types // whose attributes should be skipped during locking of a // referenced file. string $lockReferenceExcludedNodeTypes[]; $lockReferenceExcludedNodeTypes[0] = "lightLinker"; $lockReferenceExcludedNodeTypes[1] = "displayLayerManager"; $lockReferenceExcludedNodeTypes[2] = "displayLayer"; $lockReferenceExcludedNodeTypes[3] = "renderLayerManager"; $lockReferenceExcludedNodeTypes[4] = "renderLayer"; return $lockReferenceExcludedNodeTypes; }
根据需要,添加或移除任何 $lockReferenceExcludedNodeTypes[n] 行,以使用与上述示例相同的语法按节点指定属性。确保数组索引 [n] 是连续的。
如果使用与 Maya 附带的默认名称相同的名称命名该 MEL 文件,“锁定”(Lock)选项将在下次启动 Maya 时,请使用该新自定义脚本来锁定文件引用。