簡単なスクリプト

MELスクリプトとは

MELコマンドはファイルに書いておくと Script Editor から読み込むことによって何度でも実行できる。
このファイルに書き込んである MELコマンドを MELスクリプトと言う。
ファイルに書いておけば、そのファイルを消さない限り MAYA に読み込むことによって何度でも同じコマンドを実行できるし、後で必要に応じて書き換えてゆくことによって違う処理を実行することができる。
そして、後で学習するように変数、制御構造などを使用することによって複雑な処理を行うプログラムを作ることができるようになる。 (MELスクリプトの文法は C言語に似ている)
また、MELのスクリプトはファイル名を変えれば同じディレクトリ(フォルダー)に、いくつでも作っておくことができる。

作業用のディレクトリ(フォルダー)作成

これから授業を進めてゆく時の作業用ディレクトリとしてホームの下に mel という名前のディレクトリを作成しておこう。 (以下の % はコマンドプロンプトである)

% cd          ← ホームディレクトリへ移動(すでにホームディレクトリにいる場合は必要無し)
% mkdir mel   ← mel ディレクトリを作る
% cd mel      ← mel ディレクトリに移動(以後この中で作業をする) 

以後の授業で作成する MEL スクリプトはすべてこの mel ディレクトリの中に作るようにすること。

スクリプトを作ってみる

スクリプトの作り方と実行例

  1. まず、mel ディレクトリの中に test.mel というファイルをエディター(vi)によって作る。
    % vi test.mel
  2. ファイル(test.mel)の内容は、以下のように書いておく。
    sphere;
    scale 1 3 1;
    
  3. ファイルをセーブ(:wq)して vi を終了する。
  4. Script Editor から test.mel を読み込んで実行する。
    そのためには以下の2種類の方法がある。
  5. y軸方向に長くなった球が表示される。
    test.mel によって表示された球

スクリプトの保存方法

Script Editor 内に表示されているコマンドをファイルに保存することができる。
保存しておいたファイルは上記の方法によっていつでも実行できる。

  1. すでに MAYA が立ち上がって、Script Editor が表示されているとする。
    [コマンドの表示された Script Editor]
  2. Script Editor の上または下のウインドウに表示されているコマンドで保存したい部分をマウスで選択する。
    [コマンドが選択された Script Editor]
    ちなみに、マウスのダブルクリックで1単語分、3回クリックで1行分、4回クリックでウインドウ全体を選択できる。
  3. Script Editor の File → Save Selected... によってファイルに保存する。
    保存するファイル名は最後に .mel をつけた名前にする。 (たとえば tmp.mel)

Script Editor の メニュー

Script Editor のメニューについて一通り説明しておこう。

[Script Editor の File メニュー]
File → Open Script...
Script Editor の下のウインドウに読み込んだ MEL スクリプトを表示する。
File → Source Script...
読み込んだ MEL スクリプトを実行する。
File → Save Selected...
Script Editor 上で選択された MEL スクリプトをファイルに保存する。
File → Save Selected to Shelf
Script Editor 上で選択された MEL スクリプトを Shelf に登録する。
マウスのドラッグ・アンド・ドロップによっても同じことが可能である。
[Script Editor の Edit メニュー]
Edit → Select All
下のウインドウに表示された MEL コマンドを全部選択する。
Edit → Clear History
ヒストリーウインドウ(Script Editor の上のウインドウ)のクリア。
Edit → Clear Input
インプットウインドウ(Script Editor の下のウインドウ)のクリア。
Edit → Clear All
ヒストリーおよびインプットウインドウ(Script Editor の上下のウインドウ)のクリア。
[Script Editor の Script メニュー]
Script → Execute
下のウインドウに表示されている MELコマンド(スクリプト)を実行する。
テンキーの Enter キーによって実行するのと同じである。
Script → Echo All Commands
チェックしておくと実行されたMELコマンドをすべてヒストリーウインドウに表示する。
GUI(マウス)によって実行されたMELコマンドがすべて表示されるようになる。
Script → Show Line Numbers
チェックしておくとMELスクリプトなどにエラーがあった場合、エラーのあった行番号を表示する。
MELスクリプトのデバッグに便利なので必ずチェックしておくこと。
これをチェックしておくと、以下の図のようにエラーのある行数が表示される。
[Show Line Number で表示された行番号]
上の図では、2行目(line 2)にエラーがあるのがわかる。
エラーメッセージの Cannnot find procedure "moove" というのは、 そのようなコマンド(moove)は存在しないという意味である。
Script → Show Stack Trace
チェックしておくと不明のコマンド・プロシージャーなどがあった場合、エラーのトレース結果を別ウインドウに表示する。
[トレース結果]

練習

まとめ

練習課題

参考


Prev | Next
Home | Contents
abe@injapan.net