変数とアトリビュートに値を代入する

変数を宣言すれば、= 演算子を使用して変数に値を代入することができます。= 演算子の左辺の変数には、= 演算子の右辺の式の値が代入されます。例:

$x = $y * 10;

変数の型に適合しない値を代入すると、MEL インタプリタはその値を変数の型に変換しようとします。

例:

// Declare the variables...
float $foo;
float $bar;
int $baz;
// Now assign values...
$test = 5.4;
// value of $test is 5.4
$bar = $test + 2;
// value of $bar is 7.4
$baz = $bar;
// the value of $baz is 7
// MEL converted the value to an integer.

代入は代入された値で決まります。

注: MEL では、以下のように文中の文字列に string アトリビュートを割り当てることはできません。

string $str = foo.str

代わりに次のようにします。

string $str = `getAttr foo.str`;

宣言と代入を組み合わせる

便宜のため変数を作るのと同時に値を代入することができます。例:

float $param = 1.5;
int $counter = 10;
string $name = "Alice";
vector $position = <<1.5, 2.5, 3.5>>;

代入する値から判断して変数の型が明らかな場合には、型のキーワードを省略することができます。例:

$name = "Alice";
$position = <<1.5, 2.5, 3.5>>;

これは、暗示的な宣言と呼ばれます。ただし、スクリプトを読みやすくするために常に型のキーワードを使用するのが良い方法です。

繋げて代入する

同じ値を複数の変数に代入する場合、複数の代入を 1 つに繋げることができます。

$x = $y = $z = 0;

便利な代入演算子

プログラミングを行う際に、次の形式の式がよく現れます。

$x = $x + 1;

この形式はよく現れるので、MEL には複数の便利な演算子が用意されており、少ない入力で目的を達成することができます。例:

$x++ // adds 1 to the value of $x
$x-- // subtracts 1 from the value of $x
$x += 5 // adds 5 to the value of $x
$x -= 3 // subtracts 3 from the value of $x