Mayaでノードを複製したい時、「Duplicate」をするべきなのですが、、、
Ctrl+Cでコピーして
Ctrl+Vでペースト
なんてしていませんか!?
見た目の挙動はそっくりですが、実はコレ全然違うんです!(;´∀`)
階層が変わる
コピペで複製したものには、不要な階層が作成され、ノード名の先頭に「pasted__」が追加されてしまいます!
マテリアルが増える
コピペで複製すると、ノードにアサインされたマテリアルも増殖してしまいます!
それ以外にも、マテリアルやポリゴンにコネクションされたノードもすべて複製され、ノード名の先頭に「pasted__」が追加されてしまいます!
こうなってくると、ゴミノードが増えたり、マテリアルの重複など、思わぬトラブルの原因や、重たいデータになりやすくなってしまいます、、、(;´∀`)
コピペの挙動って?
コピペの良くないところを紹介いたしましたが、そもそもコピペってどんな処理がされていると思いますか!?
Script Editorの「Echo All Commands」がONの状態でログを見てみると、「CopySelected」というRun Time Commandが実行され、「cutCopyPaste」が呼び出されます。
「whatIs」を使い調べてみると、MELのプロシージャルだということがわかります。
早速、ファイルの中身を見てみると、「Ctrl+C」を押した時は、選択しているノードを「Export Selection」していることがわかります(;´∀`)
続いて「Ctr+V」を押した時は、「Ctrl+C」の時にExport Selectionしたファイルを「Import」していることがわかります(´;ω;`)
っということは!!
他のアプリケーションのコピペと違い、Mayaでコピペをすると、、、
Export SelectionしてImportする
と同じことをやっている事になります。
ノードを複製したい時に、わざわざ「Export SelectionしてImportする」なんて事はしないと思いますので、きちんと「Duplicate」を使うようにしましょう!(`・ω・´)ゞ