式コントローラでは、オブジェクトのパラメータ(長さ、幅、高さなど)や、変換とモディファイヤの値(オブジェクトの位置座標など)など、アニメーションのさまざまな要素を数式を使ってコントロールすることができます。
インタフェース手順
シーン内の他のオブジェクトのコントローラ値を基にした値の制約ができます。
式は、単一の値を戻す数値関数です。3ds Max では、アニメーションのフレームごとに式を評価れます。戻される値は、フレーム毎に異なる可能性があります。
式を割り当てることができるシーン要素を、次に示します。
シーン要素
|
コントローラ
|
作成パラメータ
|
すべての数値作成パラメータ
|
変換
|
位置[X, Y, Z]
X 回転
Y 回転
Z 回転
スケール[X%, Y%, Z%]
|
モディファイヤ
|
すべての数値モディファイヤ パラメータ(作成パラメータを含む)
|
マテリアル
|
色[R, G, B]
すべての数値マテリアル パラメータ
|
注: 式コントローラは、オイラー回転の XYZ 個別コンポーネントでのみ使用できます。TCB 回転やその他の回転コントローラに式を割り当てることはできません。
式コントローラを使用してアニメーションを作成する方法については、「例: 式コントローラを使用してオブジェクトをアニメートするには」を参照してください。
手順
変数に定数を割り当てるには:
- [スカラー](Scalars)リストまたは[ベクトル](Vectors)リストで任意の変数名を選択します。
- [定数を割り当て](Assign Constant)をクリックします。
3ds Max は新しいダイアログ ボックスを開きます。
- ダイアログ ボックスで、定数の新しい値(ベクトルの場合は、複数の値)を入力し、[OK]をクリックします。
コントローラを変数に割り当てるには:
- [スカラー](Scalars)リストまたは[ベクトル](Vectors)リストで任意の変数名を選択します。
- ベクトル変数がハイライト表示されている場合は、[コントローラを割り当て](Assign Controller)または[コントローラ/ノードを割り当て](Assign Controller/Node)をクリックします。(現在の変数タイプが[ベクトル](Vector)の場合、ハイライト表示された変数にシーン ノードを割り当てることができます。ノードのワールド座標変換位置は、現在の時間に変数のティック オフセットを足した位置になります。以下の「ベクトル変数にノードを代入するには」を参照してください)
3ds Max は、[トラック ビューを選択](Track View Pick)サブダイアログ ボックスを開きます。このダイアログ ボックスには、トラック ビュー階層に類似した内容が表示されます。
- 変数が使用するトラックをハイライトし、[OK]ボタンをクリックします。
ベクトル変数にノードを代入するには
- [ベクトル](Vectors)リストで任意の変数名を選択します。
- [コントローラ/ノードを割り当て](Assign Controller/Node)をクリックします。3ds Max は、[トラック ビューを選択](Track View Pick)サブダイアログ ボックスを開きます。このダイアログ ボックスには、トラック ビュー階層に類似した内容が表示されます。
- 変数が使用するノードをハイライトし、[OK]ボタンをクリックします。
インタフェース

[式コントローラ](Expression Controller)ダイアログ ボックス: [ベクトルに設定された変数を作成](Create Variable set to Vector)
ヒント: ダイアログ ボックスのサイズを変更するには、ダイアログ ボックスの端またはコーナーにカーソルを置いてドラッグします。
[変数を作成](Create Variables)領域
- 名前(Name)
- 変数名を入力します。
- スカラー(Scalar)、ベクトル(Vector)
- 作成する変数の種類を選択します。[ベクトル](Vector)を選択すると、[コントローラを割り当て](Assign Controller)ボタンが[コントローラ/ノードを割り当て](Assign Controller/Node)に変わります。(上記のインタフェース イメージを参照)
- 作成(Create)
- 変数を作成して、適切なリストに追加します。
[作成](Create)をクリックする前に、変数の名前と種類を指定する必要があります。
- 削除(Delete)
- [スカラー](Scalars)リストまたは[ベクトル](Vectors)リストでハイライト表示した変数を削除します。
- 名前変更(Rename)
- [スカラー](Scalars)リストまたは[ベクトル](Vectors)リストでハイライト表示した変数の名前を変更します。
最初にリストで変数をハイライト表示すると、[名前](Name)フィールドに変数名が表示されます。[名前](Name)フィールドで名前を編集し、[名前変更](Rename)をクリックすると、リストに表示されていた変数名が新しい名前に変更されます。
[可変パラメータ](Variable Parameters)領域
- ティック オフセット(Tick Offset)
- オフセット値を入力します。1 ティックは 1/4800 秒に相当します。0 (ゼロ)以外の値を設定すると、その値が現在時間に追加されます。
- [スカラー](Scalars)リスト
- 作成したスカラ変数を一覧表示します。次の事前定義定変数は、すべての式コントローラで使用でき、変更や名前変更はできません。
-
F: フレーム単位の現在時間。
-
NT: 正規時間。
-
S: 秒単位の現在の時間
-
T: ティック単位の現在の時間
- [ベクトル](Vectors)リスト
- 作成したベクトル変数を一覧表示します。
- 定数を割り当て(Assign Constant)
- ダイアログ ボックスが開き、ハイライトした変数に定数を設定できます。

スカラ変数への定数の割り当て

ベクトル変数への定数の割り当て
- [コントローラを割り当て](Assign Controller)/[コントローラ/ノードを割り当て](Assign Controller/Node)
- [トラック ビュー選択](Track View Pick)ダイアログ ボックスが開き、ハイライトされた変数にコントローラを設定できます。コントローラの値は、現在時間に変数のティック オフセットを加算した値です。
注: 現在の変数タイプが[ベクトル](Vector)の場合、[コントローラを割り当て](Assign Controller)ボタン名が[コントローラ/ノードを割り当て](Assign Controller/Node)に変わり、ハイライト表示された変数にシーン ノードを割り当てることができます。ノードのワールド座標変換位置は、現在の時間に変数のティック オフセットを足した位置になります。
- [式](Expression)ウィンドウ
- 評価する計算式を入力します。有効な演算式を入力する必要があります。ベクトル式の結果は 3 つの成分を含むベクトル値(位置、スケール、または Point3)、実数演算式の結果はスカラー値になります。
- [説明](Description)ウィンドウ
- 式を説明するテキストを入力します(オプション)。たとえば、ユーザ定義変数の説明などを入力できます。
- 関数リスト
- 式コントローラ関数のリストを表示します。
リスト中の p、q、r はそれぞれスカラー値またはスカラー式を示し、V と W はベクトル値またはベクトル式を示します。
- 保存(Save)
- 式を保存します。式は、ファイル名拡張子 .xpr が付いたファイルとして保存されます。
- ロード(Load)
- 式をロードします。
式を保存しても、変数の定義や値は含まれません。したがって、これらの定義や値は式のロード後に再定義する必要があります。
- デバッグ(Debug)
- [式デバッグ](Expression Debug)ウィンドウを表示します。
このウィンドウには、すべての変数の値のほか、式の評価値が表示されます。ウィンドウの表示内容は、変数値の変更やタイム スライダの移動に伴い自動的に更新されます。したがって、式の効果をインタラクティブに確認することができます。このウィンドウには、フレーム(F)、平均化値(NT)、秒単位の経過時間(S)、およびティック単位の経過時間(T)も表示されます。
- 評価(Evaluate)
- アニメーションの各フレームで式を評価します。
通常のプログラム言語と異なり、代入演算子(=、:=)は使用しません。結果の代入は時間の経過とともに、内部的に実行されます。
式に構文エラーが検出されると、エラー メッセージが表示されます。エラー メッセージには、式の先頭からエラーが発生した文字までの部分が表示されます。したがって、通常はエラー メッセージの末尾がエラー発生位置になります。ただし、括弧(ベクトル式ではカギ括弧)の非対応によってエラーが発生した場合は例外です。その場合は、式がエラー発生位置より先まで評価される可能性があります。
- 閉じる(Close)
- [式コントローラ](Expression Controller)ダイアログ ボックスを閉じます。