リファレンス ファイルのロック(Lock)オプションからアトリビュートを除外するには、2 つの MEL プロシージャを使用できます。 一方のプロシージャは特定の個別のアトリビュートを除外するために使用し、もう一方のプロシージャは指定したノード タイプのすべてのアトリビュートを除外するために使用します。 これらの MEL プロシージャは Maya インストール ディレクトリの scripts¥others フォルダにあります。 以降のセクションでは、これらのプロシージャの使用方法について説明します。
この例は、ファイル リファレンスのロック操作から除外するアトリビュートを指定するための、ユーザ独自の 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] が連続していることを確認します。
MEL ファイルに Maya で配布される既定のファイルとまったく同じ名前を付けると、次回の 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 ファイルに付けると、次回の Maya の起動時にはロック(Lock) オプションはこのカスタマイズされた新しいスクリプトを使用してファイル リファレンスをロックします。
MEL スクリプトのソースと一般的な MEL プロシージャ操作の詳細については、『MEL とエクスプレッション』マニュアルを参照してください。