定義済み MEL プロシージャを使用することは、MEL コマンドや関数を使用することと同じです。上記の MEL プロシージャ helloValue を実行するには、スクリプト、スクリプト エディタ(Script Editor)、またはコマンド ライン(Command Line)に MEL プロシージャ名を入力します。
helloValue( 1, "Jake" ); // Result: Hello Jake, number 1 //
helloValue プロシージャのコールを正常に終了させるには、整数と文字列の引数が必要です。プロシージャを実行するもう 1 つの方法では、カッコやカンマは使用しません。たとえば、この方法で helloValue プロシージャを実行するには、次のように入力します。
helloValue 7 "Torq"; // Result: Hello Torq, number 7 //
定義されていないコマンドがあると、Maya はスクリプトのパスに沿ってコマンドと同じ名前(ファイル名の .mel 拡張子は除く)の MEL スクリプトを検索します。
ファイルが見つかったら、そのファイル内のすべてのグローバル MEL プロシージャを宣言し、コールしたプロシージャがファイル内に存在する場合、それを実行します。
たとえば、あるスクリプト フォルダに sayWhat.mel という次のような内容のファイルがあるとします。
// This is a local procedure // that is only visible to the code in this file. proc red5() {print("red5 standing by...\n");} // This is a global procedure. When this file // is sourced, this procedure will become // available. global proc GoGo() {print("GoGo online\n");} // This procedure has the same name as this file // (without .mel on the end). global proc sayWhat() {print("sayWhat online\n");}
コマンド ラインで関数 sayWhat をコールしようとした場合:
sayWhat online
MEL スクリプトを作成し保存する場合は、このスクリプトにコーディングされたプロシージャを外部的にコールする前に、スクリプトを調達する必要があります。これは、Mayaでは コマンド ライン(Command Line)またはスクリプト エディタ(Script Editor)から外部プロシージャをコールしようとしたときではなく、起動時およびコマンドでスクリプトが調達されるからです。スクリプトを調達するには、スクリプト エディタ(Script Editor)でファイル > スクリプトのソース(File > Source Script)コマンドを使用するか、または Maya を再起動します。スクリプト調達の詳細については、スクリプト ファイルを参照してください。