Two Bone IK

Two Bone IK 制御を使って 3- ジョイント チェーンに IK を適用する方法について説明します。

Two Bone IK アニメーション ブループリント ノードでは、 スケルタル メッシュ、キャラクターの手足などの 2 ボーン チェーンを制御し、Effector Location (エフェクター位置) や終点と接触させ、Joint Target Location (ジョイント ターゲット位置) の基準点を使用してボーン チェーンの中間点を制御することができます。

two bone ik animation blueprint node

Two Bone IK ノードの Effector Location を使用すると、2 ボーン チェーンの端にあるボーンの位置を制御することができます。このプロパティを アニメーション グラフ で設定することで、インタラクション可能なオブジェクトのソケットの位置に追従させたり、レベル内のポイントに接地した接触点を作成することができます。

effector location demo

Two Bone IK ノードの Joint Target Location を使用して、ボーン チェーンの中間ジョイントの位置を設定し、ボーン チェーンの回転動作を制御することができます。

joint target location demo

また、Stretching (ストレッチ)Twisting (ツイスト) などの他のプロパティを設定して、2 ボーン チェーンの動作を制御することができます。

プロパティ リファレンス

two bone ik aniamtion blueprint node details panel

次の表では、Two Bone IK ノードのプロパティを参照できます。

プロパティ

説明

Enable Debug Draw

オンにすると、デバッグ ツールがプレビュー ビューポートに描画されます。Effector Location は赤いオブジェクトで表され、Joint Target Location は緑のオブジェクトとして描画されます。また、チェーンのルート ボーンを含む各ボーン位置から Joint Target Location まで線が描画され、その位置を示します。

IK Bone

コントロールするボーンとしてキャラクターの スケルトン のボーンを設定します。このボーンから、ノードはチェーン上の 2 つのボーンを考慮して、2 つのボーン チェーンをビルドします。最初の親ボーンはジョイントとして機能し、2 番目の親ボーンはチェーンのルートになります。

Start Stretch Ratio

Allow Stretching プロパティがオンの場合、2 ボーン チェーンがストレッチを開始する時点を制御するしきい値を設定できます。この値は、ストレッチを開始するタイミングを決定します。たとえば、0.9 の場合は、手足の全長の 90% に達すると、構造にストレッチの適用を開始します。

Max Stretch Scale

Allow Stretching プロパティがオンの場合、構造で使用可能なストレッチの最大スケールを制御する制限値を設定できます。この値は、最大ストレッチのスケールを決定します。たとえば、1.5 では、手足の全長の 150% までストレッチされます。

Twist Axis

Allow Twist プロパティがオフの場合、ボーンがどの軸 (XYZ) で整列するかを指定することができます。このプロパティは、構造のツイストを分離するときに最も役立ちます。Allow Twist プロパティがオフの場合、ローカル空間でのツイストの計算を有効にすることもできます。

Allow Stretching

オンの場合、設定した 2 ボーン チェーンをストレッチすることができます。ストレッチの制限は、Start Stretch RatioMax Stretch Scale プロパティで設定できます。

Maintain Effector Rel Rot

エンド ボーンのローカル回転を維持します。

Allow Twist

オンの場合、ボーン チェーンが通常の構造の制約の下で実行されます。オフの場合、Twist Axis プロパティで、構造がツイストできるツイストの軸を手動で設定できます。

Effect Location Space

ここでは、Effector Location の位置を計算するための基準のフレームを設定できます。基準フレームは、以下のオプションから設定できます。

World Space:Effector Location の絶対位置は、ワールド空間を使用して計算されます。 Component Space:Effector Location の設定位置は、Skeletal Mesh コンポーネントの基準フレームで計算されます。 Parent Bone Space:Effector Location の設定位置は、Effector Target として設定されたボーンの親ボーン空間で計算されます。 Bone Space:Effector Location の設定位置は、Effector Target として設定されたボーンの基準フレームで計算されます。

Take Rotation from Effector Space

Effector Location Space プロパティが Parent Bone Space または Bone Space に設定されている場合、このプロパティを有効にすると、エフェクター位置の回転を取得して、それを IKBone に適用することができます。オフの場合は、回転は無視されます。

Effector Target

Effector Location Space プロパティが Parent Bone Space または Bone Space に設定されている場合、エフェクターの位置として使用するためにキャラクターの スケルトン のボーンを選択できます。

Effector Location

デフォルトでは、このプロパティは アニメーション グラフ の Two Bone IK ノードのピンとして表示されます。Effector Location は、2 ボーン チェーンの終点の位置を制御します。Enabled Debug Draw プロパティがオンの場合、このプロパティはプレビュー ビューポートに赤いオブジェクトとして表示されます。

Joint Target Location Space

ここでは、Joint Target Location の位置を計算するための基準のフレームを設定できます。基準フレームは、以下のオプションから設定できます。

World Space:Joint Target Location の絶対位置は、ワールド空間を使用して計算されます。 Component Space:Joint Target Location の位置は、Skeletal Mesh コンポーネントの基準フレームで計算されます。 Parent Bone Space:Joint Target Location の位置は、Joint Target として設定されたボーンの親ボーン空間を使用して計算されます。 Bone Space:Joint Target Location の位置は、Joint Target として設定されたボーンの基準フレームで計算されます。

Joint Target

Joint Target Location Space プロパティが Parent Bone Space または Bone Space に設定されている場合、Joint Target Location の設定された位置を計算するための基準空間として使用するキャラクターの スケルトン のボーンを選択できます。

Joint Target Location

デフォルトでは、このプロパティは アニメーション グラフ の Two Bone IK ノードのピンとして表示されます。Joint Target Location を使用すると、2 ボーン チェーンの中間ジョイントのモーションと動作を制御することができます。Joint Target は、ジョイントを曲げるための基準点として機能します。Enabled Debug Draw プロパティがオンの場合、このプロパティはプレビュー ビューポートで緑のオブジェクトとして表示されます。

Unreal Engine のドキュメントを改善するために協力をお願いします!どのような改善を望んでいるかご意見をお聞かせください。
調査に参加する
キャンセル