Forward And Backward Reaching Inverse Kinematics (FABRIK) は IK ソルバ であり、チェーンに 2 つ以上のボーン リンクがある限り、任意の長さの ボーン のチェーンを操作できます。

概要
FABRIK ブループリント ノードは、アニメーション ブループリントの AnimGraph に追加できます。追加すると、Component Pose オブジェクトを使用して FABRIK ノードを AnimBP に組み込むことができます。
FABRIK ノードの Effector Transform 入力ピンを使用して トランスフォーム変数 を接続することで、相対 または 絶対 ボーン トランスフォームをチェーンに実装することができます。相対トランスフォームを使用して、同一のスケルトンの別のボーンを参照してトランスフォームしたり、絶対トランスフォームを使用して参照することなくチェーンをトランスフォームすることができます。

適用される スケルタル コントロール の強さを決定するために、Alpha 入力ピンでアルファ値を設定することができます。これには、AnimGraph で Alpha 入力ピンを手動で設定するか、動的変数を使用します。アルファ値が大きいほど、より強いスケルタル コントロールが適用され、この値が小さいほど適用されるスケルタル コントロールが小さくなります。

プロパティおよび設定
FABRIK ノードの [Details (詳細)] パネルには、ソルバの機能を調整するために使用できるその他の設定があります。

[End Effector (エンド エフェクタ)] セクションでは、ターゲットの位置と回転を決定します。
FABRIK ノードの [Details] パネルにある [End Effector] のプロパティは、 TwoBone_IK ノードのプロパティと非常によく似ています。
プロパティ | 説明 |
---|---|
Location, Rotation, Scale | 先端ボーンのターゲット位置の座標。EffectorLocationSpace プロパティが bone に設定されている場合、ターゲット位置として使用するターゲット ボーンからのオフセットです (ノードのピンとしても設定できます)。 |
Effector Transform Space | SkeletalMeshComponent の基準座標系におけるボーンの位置を設定します。 |
Effector Transform Bone | Effector Transform Space プロパティが bone に設定されている場合、このプロパティで定義されたボーンが使用されます。 |
Effector Rotation Source | 回転をコントロールします (コンポーネント空間、ローカル空間を維持するか、エンド エフェクタのターゲットの回転に一致させます)。 |
[Solver (ソルバ)] セクションでは、ルート から 先端 まで使用するボーンのチェーンを定義します。先端では、エンド エフェクタの位置への到達を試行します。
プロパティ | 説明 |
---|---|
Tip Bone | ボーンを スケルトン ツリー の 先端ボーン として定義します。 |
Root Bone | スケルトンの スケルトン ツリー の ルート ボーン への参照を設定します。 |
Precision | このプロパティでは、Effector Location 入力ピンからの最終的な 先端ボーン の位置の差分に対する 許容範囲 として機能する値を設定することができます。許容範囲が小さいほど、先端ボーンの位置は エンド エフェクタ のターゲットを基準としてより厳密になりますが、評価に伴うパフォーマンス上の負荷が増大します。 |
Max Iterations | このプロパティでは、実行可能な最大反復回数を設定できます。この値を調整することで、評価に伴うパフォーマンス上の負荷を抑え、大量に使用してもプロジェクトのフレーム レートが低下しないようにすることができます。 |
Enable Debug Draw | このプロパティでは、軸の描画を切り替えることで、ジョイントの回転をデバッグすることができます。 |
[Settings (設定)] セクションでは、適用される強さを設定します。
プロパティ | 説明 |
---|---|
Alpha | スケルタル コントロールの現在の強さ (ノードのピンとして設定することもできます)。 |
Alpha Scale Bias | 入力スケールの 最小 値および 最大 値を設定します。 |
Node | Effector Rotation Source が Local Rotation Relative to Parent 以外に設定されている場合、Effector Rotation Source をリセットするために使用することができます。 |