スイングとツイストの概要
3D 回転では、スイングとツイストという 2 つの回転コンポーネントによってトランスフォームの空間的な方向が定義されます。
ツイストは、指定された軸 (ツイスト軸) を中心とする回転です。 ツイストによって軸自体の方向が変わることはなく、軸を中心に回転するだけです。 スイングは、ツイスト コンポーネントが削除された後に残る回転です。 これは3D 空間におけるツイスト軸の方向を変更しますが、その軸を中心に回転することはありません。
このスイングとツイストを組み合わせることで、トランスフォームの全体的な回転を表します。 この方法で回転を分解することによって、各パーツを分離して個別に制御することができますが、これは補正 (セカンダリ) 変形システムで特に便利です。
DNA エクスポータを正しく機能させるには、スイングとツイストの設定でバインド スケルトンのジョイントを入力/出力として使用する必要があります。
スイングとツイストのノード
Maya のリグにおけるスイングとツイストの設定では、SwingTwistEvaluator ノードが使用されます。 このノードは、他のノードと同様に、Maya のノード エディタに名前を入力して作成することができます。
入力パラメータ
このノードでは、1 つまたは 2 つのジョイント (トランスフォーム) の回転を想定しています。 回転入力は次の 2 つがあります。
| パラメータ名 | 説明 |
|---|---|
Start Joint (X,Y,Z) | 開始側のトランスフォームの回転 (ジョイントの回転)。 |
End Joint (X,Y,Z) | 終了側のトランスフォームの回転 (ジョイントの回転)。 |
設定パラメータ
| パラメータ名 | 説明 |
|---|---|
Swing Blend | 回転のスイングにどれほど「追従」させるかを示すパーセンテージ。
|
ツイストブレンド | n 個のツイスト ジョイントに n 個のツイスト ブレンド値を追加します。 Twist Blend [0] ~ Twist Blend [n] の値 ツイスト ジョイントごとに、「ツイストへの追従度」を 0 から 100 %で設定します。 |
From End | ツイストの計算は、割り当てられた終了ジョイントから実行されます。 デフォルト値は開始ジョイントからです。 例:前腕のツイストはツイスト計算の基準に手首を想定しているため、前腕のツイストの From End は True に設定し、上腕/肩には False を設定します。 |
出力パラメータ
| パラメータ名 | 説明 |
|---|---|
Swing (X,Y,Z) | 最終的なスイング回転を出力し、スイング トランスフォームの回転に接続します。 |
Twists(X,Y,Z) | 最終的なツイスト回転を出力し、ツイスト トランスフォームの回転に接続します。 |
Twists[n] | Twist Blend [n] の値に基づいて、各ツイスト トランスフォームの最終的なツイスト回転を出力します。 |