2020年7月30日木曜日

source コマンドを実行するときの注意点

mayaを起動すると、スクリプトパスに存在している適切な.melファイルは自動的にコンパイルされ、コマンドとして実行できるようになります。

自作のMELを認識させるには、この他に、MELスクリプトを強制的にコンパイルさせる source コマンドというものもあります。

むかし簡単な概要などを書きましたが、コマンドを使うときに注意しないといけない事があったので、補足みたいなことを少々。


コマンドヘルプにもありますが、source は普通のMELコマンドとは違うと書かれています。

普通のコマンドでは、引数として変数を組み合わせて使用することが出来ますが、source の場合、渡すパスに変数なんかを含めると Syntax error が出てしまいます。

たとえば、
source ($path+"/test.mel");

みたいな書き方はできません。
こういった感じで source を使用したい場合は、eval もしくは evalEcho を使って実行します。

こんな感じ。
evalEcho ("source \""+$path+"/test.mel\"");

パスの部分にダブルクォーテーションが付くように書かないと、これもまた Syntax error となります。
もっと安全に実行させたい場合は、catch catchQuiet も併せて使用すると良いでしょう。

メインメニューに自作のメニューを追加するに載せている trySource.mel のコードを参考にしてみてください。


0 件のコメント:

コメントを投稿