Houdini 20.5 ノード APEXノード

rig::MultiBoneIKFromArray

インバースキネマティクスを使用し、入力と出力を配列として指定して、ルートポジション、ゴールおよび捻じれポジションからジョイントの配置および方向付けを行ないます。

On this page
Since 20.0

インバースキネマティクスを使用し、入力と出力を配列として指定して、ルートポジション、ゴールおよび捻じれポジションからジョイントの配置および方向付けを行ないます。

入力

in: Matrix4Array

すべての入力ジョイントのワールド空間トランスフォームの配列。

rootdriver: Matrix4

出力のルートジョイントを配置するワールド空間トランスフォーム。

twist: Matrix4

ソルバの極ベクトル。これは、 usetwist がTrueに設定されている場合のみ使用されます。

goal: Matrix4

IKソルバのワールド空間ゴールトランスフォーム。ゴールの回転が先端の回転として使用されます。

stretch: Float

ストレッチ係数。1の値は、ソルバを実行する前のゴールに到達するように、入力ボーンの長さを均一に伸縮させます。 0の値は、入力長をそのまま維持します。0から1の間の値は、ストレッチ係数を線形補間します。

squash: Float

スカッシュ係数。伸縮時にボーンと直交する2つの軸のスケールを制御します。 0の値はスケールがそのままになり、1の値は伸縮時にスケールを圧縮し、負の値はスケールを広げます。 0から1の間の値が推奨されます。

blend: Float

入力トランスフォームとブレンドさせる結果の割合を制御します。

dampen: Float

ボーンチェーンが伸びた時にルートをゴールから容易に引き離せる度合いを指定します。

trackingthreshold: Float

精度の閾値。 値が小さいほど解の精度が向上しますが、計算時間が長くなります。 値が大きいほど計算時間は短くなりますが、解の精度が悪くなります。

twistoffset: Float

後処理に適用する追加の捻じれ回転(度)。

usetwist: Bool

Trueに設定されている場合、 twist マトリックスを使用して捻じりを適用します。

resiststraight: Bool

Falseに設定されている場合、IKゴールがボーンチェーンの長さ( trackingthreshold の許容値を含む)よりも遠くにある時は、IKチェーンはゴールの方向に完全に真っすぐになります。 Trueに設定されている場合、IKの解をもっと真っすぐにする試みは行なわれません。 解を素早く求めるために、 resiststraight はデフォルトでTrueに設定されています。

keeproot: Bool

Trueに設定されている場合、 rootdriver の元のトランスフォームを維持します。 Falseに設定されている場合、IKソルバによって返されるルートを使用します。

keepscales: Bool

Trueに設定されている場合、出力ジョイントは入力ジョイントと同じスケールを維持します。 Falseに設定されている場合、出力ジョイントは単位スケールを使用します。

usegoalrot: Bool

Trueに設定されている場合、最後の出力ジョイントはゴールと同じ回転になります。 Falseに設定されている場合、最後の出力ジョイントは最後の入力ジョイントと同じローカル回転になります。

出力

out: Matrix4Array

すべての出力ジョイントのワールド空間トランスフォーム。

See also

APEXノード