Back to Overview

IK Correctives

Tools & Techart Topics

Kiel Figginsが先月修正のための彼のセットアップを共有したので、私も私のセットアップのシンプルなバージョンを共有したかったです。

セットアップには、腕のねじれと肘の2つのプッシュジョイントが含まれ、より良い変形が得られます。

ik arm

Roll setup

ロールのセットアップでは、Ik-HandleのikSCsolverを使用します。 チェーンは、肩から肘までの2つのジョイントだけで、どちらも肩と同じ方向を向いています。 このチェーンの上に、ikSCsolver IKを追加します。 チェーンとIk-Handleの両方を、肩骨の親にペアレント化する必要があります。 次に、肘からIkハンドルにポイント制約を追加して、どこに行く必要がある場合でもアームに追従するようにします。

arm roll

ikSCSolverは、親の肩の方向を保持して、腕に追従するように操作します。これにより、新しいチェーンがX軸にねじれを与えないようにします。追加のボーンを追加して、回転ドライバーとして肩とロールチェーンの最初のボーンを使用してツイストを分割できます。

セットアップは手首でもまったく同じように機能しますが、チェーンとIk-Handleは手首の子供になりました。

注:エクスポートスケルトン(skeletonGrp)には、ロールボーンとリストボーンの両方が追加されています。これにより、スキンが2つのボーン間でブレンドするときに、スキニングの変形が改善されます。

これは、手作業で作成したすべてのリグに使用したセットアップであり、昨年から肘にもプッシュボーンを追加しました。ひじに少しの構造を与えるだけで、スキニングだけでは偽造できません。

Push Bones

プッシュボーンのセットアップでは、2つのボーンのみを使用します。1つは肘の階層を保持するオフセットに使用し、もう1つは実際のプッシュに使用します。 ベースジョイントには、肩と肘の両方からの方向の制約があるため、常に正確に中央に配置されます。

そこから、肘の回転がいくつかの数学ノードに送られ、プッシュが作成されます。

Push nodes

  1. elbow.rotateY:これは、肘を曲げるために使用されるチャネルです。
  2. multDoubleLinear:ジョイントのrotateYを乗算します*(1.0 / 360.0)
  3. multDoubleLinear:オーバーライド可能な値で乗算する     この値は現在、メインコントロールの属性ですが、非表示にすることもできます。ポーズを最適に変形させるには、少し手間をかける必要があります。
  4. condition:回転が0より小さい場合は乗算を使用し、そうでない場合は出力は0     これにより、腕を伸ばしたときにプッシュが何もしないようにします。正しい方向に進むと、実際に骨を押します。
  5. addDoubleLinear:肘の位置からの元のオフセットに新しいオフセットを追加します     回転は0から始まるため、現在のジョイントがこの元の位置を使用して追加することを確認する必要があります。

前述のように、このセットアップは2倍に使用されます。多重化属性を使用すると、望ましい結果が得られます。

こちらのシーンをご覧ください: File