名前は、MAXScript で変数、関数、パラメータ、およびプロパティなどの識別に使用されます。名前は、アルファベットまたは「_」(アンダースコア)で始まり、任意の英数文字または「_」を含むことができます。
以下の名前は無効です。 |
|
以下の名前は無効です。 |
|
1object |
最初の文字がアルファベットではない。 |
pressed? |
? は有効な英数文字ではない。 |
a big number |
名前にスペースは使用できない。 |
seven(7) |
「(」および「)」は、有効な英数文字ではない。 |
一般のプログラミング言語とは異なり、MAXScript の名前の大文字と小文字は区別されません。たとえば、MAXScript では、次の名前はすべて同じ変数です。
この例では、 <var_name> は for ループ変数を指定しています。
プログラムの中の名前は、常に変数またはパラメータの名前として解釈され、実際は、名前が使用される任意の式の変数またはパラメータの現在値を意味します。
このスクリプトでは、 i および j が変数名です。最初の行では、変数 i に値 10 が割り当てられます。2 行目では、変数 i に保存されている値に値 5 が追加され、結果として変数 j が保存されます。3 行目では、値 15 が出力され、これが変数 j に保存される値です。
MAXScript では、ランタイム時に名前を数や文字列のように値として扱うこともできます。MAXScript で名前値を指定するには、次に示すように名前の前に「#」を付けます。
名前値は、主に関数の呼び出しにおいてシンボリック引数として使用されます。特に、多くのビルトイン関数では、名前値がこのように使用されます。シンボリック引数に指定できる値は関数によって定義され、関数と一緒に記述されます。
たとえば、 setBeforeORT() 関数について考えてみます。構文を次に示します。
最初のキーより前の時間に対するコントローラの範囲外型(ORT)を設定します。 <ORT_type_name> は、以下のような名前値のいずれかです。
名前の値は、コレクションでインデックスとして使用することもできます。
例: |
ModifierArray のインデックスには、次のように整数、名前、または文字列を使用できます。 |
単一引用符で囲まれた名前を使用すると、スペースやその他の区切り記号など、単一引用符で囲まなければ名前として不正な識別子になる文字を指定することができます。このような名前は、主に、名前に特殊文字を含む 3ds Max オブジェクト クラスやプロパティを指定するために使用されます。
'<any_char_except_quote>' -- for an identifier or property name #'<any_char_except_quote>' -- for a name literal '<any_char_except_quote>': -- for a keyword parameter label
3ds Max の名前にはスペースを含むものが多いため、名前にスペースを入れる代わりにアンダースコア文字「 _ 」を使用することができます。