PR

【UE5】Full Body IKノードの設定項目

Unreal Engine 5

Unreal Engine 5のコントロールリグで、Full Body IKノードを使う際の設定項目です。
IKリグのフルボディIKと、ほぼ共通です。
※エフェクタ=コントロールという認識で書いています。

スポンサーリンク

Effectors

Position Alpha:

ボーンの位置を、対応するコントロールの位置に反映する強さです。1で最大限近づきます。

Rotation Alpha:

ボーンの回転を、対応するコントロールの回転に反映する強さです。1で最大限近づきます。

Strength Alpha:

ボーンを、対応するコントロールが引っ張る強さです。0にすると全く引っ張らなくなりますが、他のコントロールの動きに対する抵抗は少し残ります。

Pull Chain Alpha:

値を0より大きくすると、スケルトンを内部的にチェーンとして扱い、計算結果を改善します。
ロボットアームのような、複雑な拘束があると、良い計算結果にならない場合があります。

Pin Rotation:

公式ドキュメントから引用すると、「エフェクタ トランスフォームの回転 (1.0) と入力ボーンの回転 (0.0) の間にエフェクタ ボーンの回転をブレンドします。」とのことです。
Rotation Alphaとの違いは、まだ明確に把握できていません。
以下の結果から、Pin Rotationはボーンの初期姿勢(ルートボーンの姿勢?)を反映する強さで、Rotation Alphaはコントロールの回転を反映する強さ、という認識です。
Rotation Alpha:0、Pin Rotation:1の時、コントロールの回転は対応するボーンに反映されず、ボーンの初期姿勢を維持するように、繋がったボーンとの角度は変化します。
Rotation Alpha:0、Pin Rotation:0の時、コントロールの回転は対応するボーンに反映されず、繋がったボーンとの角度を維持するように、対応ボーンの姿勢は変わります。
Rotation Alpha:1、Pin Rotation:0の時、両方の値が0の場合と同じです。Rotation Alphaは機能しません。

スポンサーリンク

Bone Settings

Rotation/Position Stiffness:

コントロールの移動、回転の影響を調整します。1にすると影響が強くなります。

X/Y/Z、Min X/Y/X、Max X/Y/Z:

各軸の回転角度制限を設定します。
Freeは、自由に回転します。
Limitedは、設定した範囲で回転します。
Lockedは、回転しません。

Use Preferred Angles:

IK目標を操作した際に、優先する回転軸、角度の設定有無です。

Preferred Angles:

どの軸の回転を優先するかを調整します。
各軸の設定した角度に近づくように、ボーンが動くようになります。例えば、X、Yを0にしてZを設定すると、Z軸周りの回転を優先してボーンが動きます。

スポンサーリンク

Excluded Bones

選択したボーンを、Full Body IKノードの影響から除外します。
角度制限をしても、ボーンは多少動くため、ボーンを全く動かしたくない場合に使用します。

スポンサーリンク

Settings

イテレーション:

IK計算の反復回数に関わる値です。値を大きくすると目標位置に収束しやすくなりますが、計算コストが増加します。

質量乗数:

全てのボーンの、回転と平行移動に対する抵抗力に関わる値です。値が大きいほど抵抗が大きくなります。基本的には、0~10の間の値にします。

伸縮を許可:

ボーンの平行移動を許容します。ボーンの端点同士の距離変化の許容?

ルートの動作:

ルートボーンの平行移動を制御します。
Pin to Input以外は、ルートボーンの平行移動を許容します。
Pre Pullは、IK目標の移動の平均を使って、ルートボーンの平行移動を制限します。Freeに比べて計算が収束しやすくなります。
Pin to Inputは、ルートボーンの平行移動と回転をロックします。ルートボーンのボーン設定は無効になります。
Freeは、ルートボーンが自由に動きます。ボーン設定がある場合は、それに従います。計算が収束しにくくなります。

ルートの事前プル設定:

Root BehaviorがPre Pullの時の設定です。値が大きいほど、ルートボーンの平行移動と回転が大きくなります。

グローバルプルチェーンアルファ:

すべてのエフェクタのPull Chain Alphaに対する乗数です。

最大角:

各ボーン設定の反復計算ごとの最大回転角度です。値が大きいと計算の自由度が高くなり、発散しやすくなります。

過度の緩和:

計算を収束しやすくするために、各ボーン設定の拘束に倍率を掛けます。

以上です。

コメント

タイトルとURLをコピーしました