ブレンドツリー
2D ブレンディング

1D ブレンディング

ブレンドノードInspector の最初のオプションは __Blend Type__ です。このドロップダウンは、1–2 のパラメーターに基づいてブレンドするいくつかのブレンドタイプのうち 1 つを選択するために使います。1D ブレンディングは 1 つのパラメーターに基づいて子のモーションをブレンドします。

ブレンドタイプを設定した後に最初にやるべきことはこのブレンドツリーを制御する アニメーション Parameter を選択することです。この例ではパラメーターは、Direction であり、–1.0 (左) および +1.0 (右) の間で変化し、0.0 の場合は左右どちらにも傾かずに、真っ直ぐ走ることを意味します。

次に個別のアニメーションを追加するには + ボタンをクリックし、ポップアップメニューから Add Motion Field を選択します。それが終わった後は次のようになるはずです。

3 つの AnimationClip をブレンドする 1D ブレンドツリー
3 つの AnimationClip をブレンドする 1D ブレンドツリー

インスペクターの上部にあるダイアグラムでは、パラメーターが最小値から最大値まで変化するにつれ、各々の子モーションへの影響がどうなるかを表示します。各々のモーションは小さな青いピラミッドの記号として表示され(最初および最後は半分だけ表示)、そしてその記号のどれかの上で左クリックし続けると、その下に表示されているモーションリストの対応するモーションがハイライトされます。各々のピラミッドのピークはモーションが完全な影響力をもつ位置、すなわちアニメーションの重み付けの値が 1 となり、他方のアニメーションの重み付けは 0 になります。この位置はモーションの しきい値 とも呼ばれます。

Blend Tree インスペクターの上部のダイアグラムはパラメーター値の変化に伴って子モーションの重み付けの変化を図示します
Blend Tree インスペクターの上部のダイアグラムはパラメーター値の変化に伴って子モーションの重み付けの変化を図示します

赤い垂直バーは Parameter の値を表します。Inspector の下部の PreviewPlay を押して、ダイアグラムの赤いバーを左右にドラッグするとパラメーターの値が、各々のモーションのブレンディングをどう制御しているかが分かります。

パラメーターの範囲

ブレンドツリーを使用したパラメーターの範囲は左右にある二つの数字として表示されます。いずれの数字も変更したい場合は、数字をクリックしてマウスを左右にドラッグすることで変更できます。値はモーションリストの最初と最後のモーションの Threshold (しきい値) に対応することに注意してください。

しきい値

モーションの Threshold (閾値) を変更するには対応する青いピラミッドをクリックして左右にドラッグします。もし “Automate Thresholds” が有効でない場合、モーションリストにあるモーションの Threshold の値を編集するために、Threshold 列の数字フィールドに値を入力します。

モーションリストの下には Automate Thresholds のチェックボックスがあります。これを有効にするとパラメーターの値の範囲に渡って均等に複数の threshold (閾値) が配置されます。例えば、もし 5 つのクリップがあって、パラメーターが –90 から +90 までの範囲に渡る場合、threshold は –90、–45、0、+45、+90 の順にセットされます。

Compute Thresholds ドロップダウンでアニメーションクリップのルートモーションから選んだデータによる閾値を設定します。選択することが可能であるデータは speed、velocity の x、y、z および角度またはラジアン単位の angular speed です。parameter がこれらのプロパティーのひとつに対応する場合、Compute Thresholds ドロップダウンを使用して閾値を計算できます。

プロパティー 機能
Speed 各々のモーションを speed (速度の大きさ)に応じて Threshold をセットします。
Velocity X 各々のモーションを velocity.x に応じてしきい値をセットします。
Velocity Y 各々のモーションを velocity.y に応じてしきい値をセットします。
Velocity Z 各々のモーションを velocity.z に応じてしきい値をセットします。
Angular Speed (Rad) 各々のモーションをラジアン/毎秒単位の Angular Speed (角速度)に応じてしきい値をセットします。
Angular Speed (Deg) 各々のモーションを角度/毎秒単位の Angular Speed (角速度)に応じて閾値をセットします。

例えば、1.5 単位/毎秒の歩行、2.3 単位/毎秒のジョギング、4.0 単位/毎秒の走行、で移動するアニメーションがあったとして、ドロップダウンメニューから Speed を選択することで 3 つのアニメーションに対するパラメーター範囲および Threshold を、この値に対してセットします。このため、もし Speed パラメーターを 3.0 にセットした場合、ジョギングおよび走行アニメーションを、ややジョギングに重みを付けた形で、ブレンドします。

ブレンドツリー
2D ブレンディング