Pose Driver アニメーション ブループリント ノードを使用すると、キャラクターをアニメートする アニメーション カーブ 値で Pose アセット を制御することができます。
Pose Blender および Pose by Name アニメーション ブループリント ノードは、Pose アセットを既存のアニメーション ポーズとブレンドするために使用されますが、Pose Driver ノードは Pose アセット内に含まれるポーズを制御してキャラクターをアニメートするために使用されます。
Pose Driver ノードを使用すると、ボーンの動きを使用してランタイム時に Pose アセットの再生を制御することができます。
ビューポート | グラフ |
[Pose Asset] を選択し、Pose Targets と [Source Bone] を設定することで、ソース ボーンの動きのデータを使用して Pose アセットが制御する動作をコントロールすることができます。
Pose Driver ノードの Pose アセットを再選択し、Tool プロパティを使用して新しいポーズ セットをインポートする場合、Pose Driver ノードを作成する必要があります。
ポーズ ターゲット
Pose Targets プロパティでターゲットを割り当てることにより、Pose Driver ノードを使用してターゲットにしたい Pose アセット または アニメーション カーブ のスケルタル メッシュを指定することができます。ポーズ ターゲットは、Pose アセット に含まれるポーズを使用して、手動で入力するか、自動的に割り当てることができます。
Pose アセットに含まれるポーズをポーズ ターゲットとしてインポートするには、まず Pose Driver の [Details] パネルで、Pose Asset プロパティにある Pose アセットを選択します。
Pose アセットが割り当てられたら、Tool プロパティのコンテキスト メニューの [Pose Asset] オプションから [Copy Poses (ポーズをコピー)] を選択します。
インポートされたポーズ ターゲットは、Pose Driver ノードを使用して制御できます。
ポーズ ターゲットのプロパティのリファレンス
以下のプロパティは、Pose Driver ノードのすべてのポーズ ターゲットの動作をコントロールします。ポーズ ターゲットのプロパティのリファレンスを以下に示します。
プロパティ | 説明 |
---|---|
Solo Driven Pose / Curve Only | ポーズ ターゲットがポーズ全体を表しているのか、アニメーション カーブのみを表しているのかを切り替えることができます。このプロパティが有効な場合は、カーブ データのみを補間し、ソース ジョイントはそのまま保持します。無効な場合は、すべてのポーズ データを使用します。 |
Tools | Pose Driver ノードに Pose Asset プロパティで設定されているポーズ アセットが含まれている場合、以下のオプションを選択することで、Pose Driver で制御するポーズまたはカーブの動作を指定できます。ドロップダウン メニューで、次のオプションを選択できます。 Copy All from PoseAsset (Pose アセットからすべてをコピー):Copy All from PoseAsset (Pose アセットからすべてをコピー):設定された Pose アセット の関連付けられているアニメーション ポーズからすべてのポーズ ターゲットを作成し、設定します。このオプションが選択されている場合は、既存のポーズ ターゲットがすべてオーバーライドされます。 Auto Scale (自動スケーリング):最近傍のポーズ ターゲットとの距離に基づいて、すべての スケーリング 係数を自動的に設定します。 |
Add Target (ターゲットを追加) | [(+) Add Target (ターゲットを追加)] ボタンを使用して、ポーズ ターゲット追加できます。 |
Pose Driver ノードに登録された個々のポーズ ターゲットでは、以下のプロパティを調整できます。ポーズ ターゲットのプロパティのリファレンスを以下に示します。
プロパティ | 説明 |
---|---|
Solo | [Solo] ボタンを長押しすると、ビューポートでポーズ ターゲットをプレビューできます。また、ソロ ポーズをダブルクリックすることで、ポーズ ターゲットのポーズ プレビューをロックすることができます。ロックされたポーズの [Solo] ボタンをダブルクリックすると、そのプレビューのロックが解除されます。 |
Remove Target | 削除したい特定のポーズ ターゲットの横にある [Remove Target] ボタンを選択すると、ターゲットを削除することができます。 |
Scale | ここでは、ポーズ ターゲットのカーブやポーズのスケールを設定することができます。値に「1」を指定すると、カーブまたはポーズの値がポーズ ターゲットとして使用されます。 |
Drive | 設定されている Pose アセットのどのポーズをポーズ ターゲットを使用して制御するかを選択します。 |
Hidden | このプロパティを有効にすると、デバッグ描画でこのポーズ ターゲットが非表示になります。 |
Override | ポーズ ターゲットのブレンド メソッドとブレンド関数のオーバーライドを設定することができます。最初のフィールドでは、以下のオプションからブレンド メソッドを設定することができます。
2 番目のフィールドでは、以下のオプションからオーバーライド ブレンド関数を選択することができます。
|
Curve | ポーズ ターゲットがアニメーション ポーズではなく アニメーション カーブ である場合は、このプロパティを有効にします。アニメーション ポーズをポーズ ターゲットとして使用する場合は、このプロパティを無効にします。 |
X, Y and Z | ポーズ ターゲットの位置の X、Y、および Z 値を参照して、調整することができます。デフォルトでは、これは ビューポート で 緑色のオブジェクト として表示されます。すべての値が「0」に設定されている場合、ポーズ ターゲットの動きは ソース ボーン とその 子 に分離されます。 |
カーブベースのポーズ ターゲット
ポーズ ターゲットは、Pose アセット を使用するのではなく、アニメーション カーブ で制御することもできます。Pose Driver ノードの [Details] パネルで、[Drive Output] プロパティを [Drive Curves] に設定します。
[Pose Target] セクションで、[Solo Driven Pose / Curve Only] を有効にし、各カーブのポーズ ターゲットで、*[Curve] を有効にします。Curve プロパティを有効にすると、プロパティ ウィンドウ内でカーブ グラフを編集できるようになります。
プロパティ リファレンス
Pose Driver ノードのプロパティのリファレンスを以下に示します。
プロパティ | 説明 |
---|---|
Source Bones | キャラクターの スケルトン からボーンを選択して、ソース ボーン として使用し、向きに基づいて、制御されたアニメーションのポーズ パラメータを適用します。多くのソース ボーンを追加できますが、ソース ボーンは 1 つ以上必要です。[Add (+) Indexes (インデックス追加)] で、ポーズの向きを制御するソース ボーンを定義します。 |
Eval Space Bone | ソース ボーン のトランスフォームを評価するために、キャラクターの スケルトン からオプションのボーンを選択することができます。指定しない場合、ソース ボーン の ローカル空間 が使用されます。 |
Eval from Ref Pose | 有効にすると、ソース ボーンの向きとトランスフォームが、Reference Pose の位置を基準として評価されます。これは、[Swing] と [Twist Angle] を [Distance Method] として使用する場合に推奨します。ツイストはキャラクターの 参照ポーズ から算出されるためです。無効な場合、ソース ボーン の ローカル空間 が使用されます。 [Eval Space Bone] が設定されている場合、[Eval from Ref Pose] は無視されます。 |
Only Drive Selected Bones | 有効にすると、Only Drive Bones プロパティに設定されていないすべてのボーンが除外されます。 |
Only Drive Bones | [Only Drive Selected Bones] プロパティが有効な場合にのみ使用されるボーンを、キャラクターのスケルトンから追加および選択することができます。 |
Solver Type | 使用するブレンド ソルバのタイプを指定できます。通常、Additive (加算) ソルバには正規化が必要で、Interpolation (補間) ソルバには必要ありません。補間 ソルバの方がスムーズにブレンドが実行されます。
|
Radius | 各ターゲットのデフォルトの半径を設定できます。 |
Automatic Radius | 有効な場合、このノードは、ターゲット間の平均距離に基づいて半径を自動で選択します。 |
Function | 使用するブレンド関数を設定することができます。次のオプションを使用できます。
|
Distance Method | ブレンドに使用するメソッドを設定することができます。次のオプションを使用できます。
|
Twist Axis | [Distance Method] が[Swing Angle] に設定されている場合に使用する軸。X 軸、Y 軸、または Z 軸の制限値を設定することができます。 |
Weight Threshold | 重みを設定できます。この値を下回る重みは、ターゲットの寄与で無視する必要があります。 |
Normalize Method | 重みを正規化するために使用するメソッドを設定することができます。次のオプションがあります。
|
Median Reference | 有効にすると、[Normalize Method] が [Normalize Within Median] に設定されている場合に、正規化に使用される中央値制限の回転または位置を設定することができます。 |
Median Min | 中央値正規化メソッドで使用する最小距離を設定することができます。 |
Median Max | 中央値正規化メソッドで使用する最大距離を設定します。 |
Drive Source | ポーズ ターゲット の制御にアルファを適用するために、[Rotation] と [Translation] のどちらのトランスフォームを読み取るかを選択することができます。 |
Pose Asset | 制御する Pose アセット をプロジェクトから選択できます。 |
デバッグ設定
Pose Driver ノードのデバッグ設定のリファレンスを以下に示します。
プロパティ | 説明 |
---|---|
Axis Length | デバッグ描画に使用される軸の長さ (ワールド単位)。 |
Cone Subdivision | デバッグでコーンを描画するときに使用するサブディビジョン/線の数。 |
Draw Debug Cones | オンの場合、コーンはデバッグ用に 3D で描画されます |