2016年7月26日火曜日

sourceのアレコレ

sourceについていくつか。

mayaの再起動をしないとsourceできない(ことはない)

mayaが起動している最中に.melファイルを追加した場合、mayaを再起動をしないとsource しても

// Error: Line 1.18: Cannot find file "hogehoge.mel" for source statement. // 

と、追加した.melファイルは見つからないようなエラーが出てしまいますが、コマンドラインで

rehash

を実行するとMELのスクリプトパスをチェックするので、新しいファイルが読み取られsource 
実行できるようになります。

ただし、global procの引数の量や型を変えた場合、sourcerehashを行っても更新されないので、
こういったケースの場合には再起動が必要です。

けっきょくは再起動するんかーいっ!


ファイル名の前にパスを付けるとスクリプトパス以外のフォルダも読み込める

たとえば、Dドライブのhogeフォルダにhoge.melがある場合、

source "d:/hoge/hoge.mel";

と絶対パスの指定が可能。自分は有効な手段を見出せていないですが、使い方はあなた次第。

本来の使い方と思しき、相対パスも可能。
MAYA_SCRIPT_PATH の中にサブフォルダを掘り、リグ関係のスクリプトをまとめるとします。
そんな場合、

source "RIG/tryRigCreaterCore.mel";

とすることでコンパイルが可能。
"../"でさかのぼることも出来ます。

もちろん/(スラッシュ)ではなく\(バックスラッシュ・円マーク)も使えますが、エスケープ
しないといけないので、スラッシュのほうが無難でしょう。


source した.melファイル内にsourceが記述されていると不安定になる

最悪mayaがクラッシュ

ループ処理の中にsource を使ったプロシージャが含まれていると、スクリプトのコンバートが
終了する前に呼び出してしまいmayaが強制終了してしまうことがあります。
乱用は要注意。



0 件のコメント:

コメントを投稿