On this page | |
Since | 15.5 |
このノードは、あるCrowd Stateから別のCrowd Stateへのトランジション(遷移)を定義します。
入力は、ステート(状態)がTrueに評価された時にトランジション(遷移)を開始する
トリガーとなります。
Clip Transition Graph
Crowdオブジェクトのオプションのクリップトランジショングラフを使用すれば、ステートとアニメーションクリップ間のトランジションを制御することができます。
そこには、お互いにトランジション可能なクリップに関する情報、それらのクリップ内でトランジションを発生させる箇所に関する情報が備わっています。
これを
Crowd Transition DOPで使用することで、現行アニメーションクリップ内の適切な箇所までステートトランジションを遅らせたり、次のクリップへ滑らかにブレンドさせることができます。
さらに、そのクリップトランジショングラフは、このビヘイビアに対してクリップ毎に制御することができます(これは、トランジションの Input State パラメータに複数のステートを指定した場合や、どれかの入力ステートに対して Randomize Clips を有効にした場合に役立ちます)。
Test Simulation: Crowd Transition SOPを使用することで、群衆シミュレーションをセットアップする前に、特定のクリップ間のトランジションを簡単にプレビューすることができます。
クリップトランジショングラフジオメトリ内の各ポイントはアニメーションクリップを表現し、各2点ポリゴンはクリップ間の(一方向の)トランジションを表現します。
ステートトランジション中に、入出力ステートのアニメーションクリップに相当するポイントが直接接続されていない場合、Crowd Transition DOPは、それらの2つのクリップ間の最短パスを使用します。
アトリビュート
名前 | クラス | タイプ | 説明 |
---|---|---|---|
clipname
|
Point | String |
アニメーションクリップの名前を指定します。 |
agentname
|
Point | String |
この文字列は、エージェントの |
blend_durations
|
Primitive | Float Array |
トランジション領域毎に、その領域で始まるトランジションの期間(秒)を指定します。 |
sync_points
|
Primitive | Vector2 Array |
トランジション領域毎に、その2つのアニメーションクリップで似たポーズを持つクリップ時間(秒)のペアを指定します。 |
transition_regions
|
Primitive | Vector2 Array |
最初のアニメーションクリップに対して、トランジションを起こすことができるクリップ時間の範囲(秒)を指定します。 |
パラメータ
Group
エージェントのグループにのみ影響を与えます。
Input State
トランジション(遷移)前のステート(状態)を指定した文字列パターン。
それらのステート名は、Crowd Stateノードの State Name パラメータに該当します。
以下のパターンは、match VEX関数と同じ構文に従います。
-
*
は、すべてのステートに一致します。 -
* ^walk
は、walk
を除くすべてのステートに一致します。 -
walk run_*
は、walk
ステートと名前がrun_
で始まるすべてのステートに一致します。
Output State
トランジション(遷移)後のステート(状態)の名前。これはCrowd Stateノードの State Name パラメータに相当します。
Set Output Clip
Output State にトランジション(遷移)した時のデフォルトのクリップ選択の挙動をオーバーライドします。
通常では、 Output Clip は、Output Stateの Clip Assignment パラメータに基づいて選択されます。
Output Clip
Set Output Clip が有効な時、ここには Output State に入った時のトランジション先となるクリップを指定します。 このクリップは、VEXpressionsを使ってエージェント単位で調整することができます。
Use VEXpressions
ローカルエクスプレッションを使って、各エージェントの Output State または Output Clip をオーバーライドできるようにします。
Random Delay
トリガーがTrueと評価するタイミングとトランジションが始まるタイミング間でランダムな遅延を追加します。これは、多くのエージェントが同時にトランジションを開始しないようにするのに役立ちます。
Max Random Delay
Random Delay が有効な時に、トランジションが始まるまでの最大遅延(秒)を指定します。
Random Seed
Random Delay時間を選択した時に使用するシードを指定します。
Use Clip Transition Graph
Crowdオブジェクトのオプションのクリップトランジショングラフを使用すれば、ステートとアニメーションクリップ間のトランジションを制御することができます。
これを使用することで、現行アニメーションクリップ内の適切な箇所までトランジションを遅らせたり、中間のトランジションクリップを使用することができ、また、これには新しいクリップへ滑らかにブレンドさせる方法に関する情報を備えています。
さらに、そのクリップトランジショングラフは、このビヘイビアに対してクリップ毎に制御することができます(これは、トランジションの Input State パラメータに複数のステートを指定した場合や、どれかの入力ステートに対して Randomize Clips を有効にした場合に役立ちます)。
Interrupt Active Transitions
このトランジションを開始するために、アクティブまたは保留中のトランジションを中断できるようにします。 これは、例えばエージェントがトランジションの途中かどうかに関係なく衝突が起きた後に即座にラグドールステートに切り替えるのに役立ちます。
Duration
ステート間のトランジション(遷移)の長さ(秒)。
State Blend
Crowd Solverが Input State と Output State との間をトランジション進捗としてブレンドする方法を指定します。
Examples
ClipTransitionGraph Example for Crowd Transition dynamics node
このサンプルでは、クリップトランジショングラフを使用することで、ステートのトランジションに対してトランジションクリップを用意する方法を説明しています。
See also |