Mayaでスクリプトがやりたいと思った場合に、MEL・Python(maya.cmnd か pymel)・その他‥と色々種類がある訳ですが、とりあえずやってみたいと思った時にはまずMELを触ってみてすんなり入れたので、ハードルの低さからまずMELをやってみるのが良いのかなと思いました。
そしてスクリプト言語に慣れてきたところで、Pythonに手を出すのが良いように思います。
Pythonなら様々なアプリケーションで利用できたり記述がシンプルだったりします。
(そういう自分はPythonを始めて少し経ったあたりで今は止まってしまっていますが)
で、完全に記憶が喪失してしまわないうちにMELについて書いておきたいと思います。
◆何から手をつければいいのか?
こちらですが、Mayaのシェルフによく使う機能を登録したりしますよね。
それをシェルフではなくMELでパネルを自作してボタンを並べて、ボタンを押せば機能が実行されるショートカット集を作るところから始めるのをおすすめします。
上図のような感じでウインドウを作成してボタンを並べて、各ボタンに好きな機能を割り当ててオリジナルのツールを作るというのが、すぐに役に立つ上に見た目が立派なことからもモチベーションが上がるので、手始めにやってみるのに良いと思いました。
そして作ってるうちに色々と欲が出てきます。ボタンにアイコン画像を貼り付けてみたいとか、数値入力させたいとか、その数値をスライドバーで変えるUIにしたいとか。その方法を調べながら拡張していくことで楽しく覚えていくことができます。
◆実行したい機能のMELの記述を確認するには?
スクリプトエディタを開いておいて、何か機能を実行するとログでMELが確認できるので、それをコピペすればOKというのがMEL初心者の定番なのかなとは思いますが、それだと色々と余計なログが沢山流れて「どこを切り取って使えばいいんだ?」と混乱したりします。
そこで、まずはMaya上部のメニューから好きな機能をシェルフに登録して、登録したシェルフの編集画面を開いてMELの内容を確認することをおすすめします。
メニューから機能を選択する際にCtrl + Shiftを押しながら選択するとシェルフに登録できます。
そのシェルフを右クリックで開くとMELでの最もシンプルな命令文が確認できます。
これをスクリプトエディタにコピペすればOKという訳です。
それでうまくログを取得できない時は、MELに欲しい機能を一旦実行してからUndoすると、今取り消しした命令のシンプルな記述がログとして流れたりするのでそれを利用することもできます。
◆ウインドウはどうやって作るの?
「MEL ウインドウ」「MEL ボタン」「MEL レイアウト」といったあたりの単語で検索すると丁寧に解説されている記事が色々と出てきます。ここでもいくつかご紹介。
ウインドウの記述についてはこちら。
How to make a window ( MEL I - 08AD )
ボタンの記述についてはこちら。
Layout 1 ( MEL I - 08AD )
ウインドウのレイアウトについて。
Digital Matrix Maya - MEL Quick Reference
◆オススメのチュートリアル
まずこちらのMEL入門動画をやってみることをオススメします。
日本語での解説付きで敷居も低く、初めて実戦するのにとても良い動画だと思います。
◆MELとpythonの違い
こちらの記事が分かりやすく説明されています。オブジェクト志向も非常にくだいて説明されていて、こういう説明ができる人になりたいなあなどと思いました。
こちらもメモとしてペタリ。