Mayaでメッシュ結合時にルートノードを残す
https://gyazo.com/1909fd08d3345e66e9b1fc346f5937c5
こういう状態のシーンがあったとして、Child以下のメッシュを「Unite」という名前で結合して、Childグループを消すという要件だとします。
スクリプトによる結合は以下を参照。
というわけでメッシュを全て選択して以下を実行。
code:unite.py
cmds.polyUnite(*cmds.ls(sl=True), name="Unite", ch=0, op=False, cp=False, muv=1)
結果
https://gyazo.com/e56a8f40990e71c8c387985ec2cf3f06
ファッ。
Rootも消えてる。
前はこんなことなかったと思うんだけどなーと思いつつ、試しにRoot直下に結合対象外のノードを追加。
https://gyazo.com/b97bbe413f2c26697feffe9d9a85dfec
再度実行した結果。
https://gyazo.com/20e8fe4b103fd61de0fab44d8855f8d7
ヨシ!
あとはRootにParent化して追加したゴミノードを削除すれば完了。
どうやら以前試したときはルート以下に結合対象外のノードがあった模様。なるほどなー。
つらい。