向き、スケール、またはポーズのコンストレイント

 
 
 

いくつかのコンパウンドを使用して、アクターのプロキシ リグのデフォーマのスケーリング、向き、全体のポーズをコンストレイントできます。

リグ プロキシの階層は、腕、脚、上半身などブランチ内の複数のデフォーマをコンストレイントするときに重要になります。デフォーマがリグ プロキシで適切にペアレント化され、親デフォーマがブランチに作用するようにコンストレイントできることを確認してください。詳細は「アクターのリグを修正する」を参照してください。

設定した条件に基づいて特定のデフォーマを制御するには、アクション状態システムでコンストレイントを使用します。詳細については、「アニメーションの状態のデフォーマ変換を修正する」を参照してください。

デフォーマの向きのコンストレイント

[群集の向きコンストレイント](Crowd Orientation Constraint)コンパウンドを使用して、アクターのリグ プロキシのデフォーマの回転を定義した角度にコンストレイントできます。たとえば、上部スパイン、腕、頭の親であるアクターの胴体のデフォーマを回転して、下の群集に見られるようにアクターを前かがみにすることができます。

  1. シミュレーション ポイント クラウドの[Animation_Blending]ICE Tree の[アニメーションの定義](Animation Definition)ノードで、Crowd Orientation Constraint(群衆の向きコンストレイント)コンパウンドを取得します。

  2. [Get Data]ノードで、コンストレイントするデフォーマへの参照を設定します。

    アクターのリグを修正する」の説明に従ってリグ プロキシを表示させると、適切なデフォーマを特定することができます。

  3. [Get Data]ノードの Out Name 出力を[群集の向きコンストレイント]([群集の向きコンストレイント](Crowd Orientation Constraint))コンパウンドの[プロキシ デフォーマ名](Proxy Deformer Name)ポートにプラグインします。

  4. 親デフォーマをコンストレイントする場合は、子デフォーマにもコンストレイントが適用されるように、[群集の向きコンストレイント](Crowd Orientation Constraint)コンパウンドのプロパティ エディタで[子変換コンペンセイション](Child Transform Compensation)オプションがオフになっていることを確認してください。

  5. [群集の向きコンストレイント](Crowd Orientation Constraint)コンパウンドで[回転](Rotation)の XYZ 軸の値を設定します。

    この例では、[回転](Rotation)は、指定された範囲内のランダムな値に基づいて行われています。

  6. コンストレイントのコンパウンドに[ブレンド](Blend)の値を設定して、オリジナルのシミュレーションのウェイト(値 0)と、指定している新しい回転の値(値 1)をブレンドします。

    この値をアニメートして、アクターを前かがみにしてオリジナルの上向き位置に戻すといった回転の変更ができます。

  7. [群集の向きコンストレイント](Crowd Orientation Constraint)コンパウンドの[実行](Execute)出力ポートを[アニメーションの状態の定義](Define Animation State)ノードの[ポーズ モディファイア](Pose Modifier)ポートに接続します。

デフォーマのスケールのコンストレント

[群集のスケーリング コンストレイント](Crowd Scaling Constraint)コンパウンドを使用して、XYZ 軸のいずれか、またはすべてのローカル空間でアクターのリグ プロキシのデフォーマのスケーリングをコンストレイントできます。これは、同じリグを使用するが異なるプロポーションが必要なアクターの調整を行う場合や、群集のアクターに単なるランダム化を追加したい場合に便利です。

デフォーマが他のデフォーマの親である場合、ブランチ全体をスケーリングすることも、親のみをスケーリングすることもできます。たとえば、下の群集に表示されているように、上部スパイン、腕、頭の親である胴体のデフォーマをスケーリングすることで、アクターの上半身のスケーリングをコンストレイントできます。

注:パーティクルの[サイズ](Size)および[スケール](Scale)の値を設定することで、放出時のアクター全体をスケーリングすることもできます。詳細については、「群集パーティクル放出を設定する」を参照してください。これにより、アクターの脚と足が正しく地形を検出できるようになります。

  1. シミュレーション ポイント クラウドの[Animation_Blending]ICE Tree の[アニメーションの定義](Define Animation)ノードで、Crowd Scaling Constraint(群集スケール コンストレイント)コンパウンドを取得します。

  2. [Get Data]ノードで、コンストレイントするデフォーマへの参照を設定します。

    アクターのリグを修正する」の説明に従ってリグ プロキシを表示させると、適切なデフォーマを特定することができます。

  3. [Get Data]ノードの Out Name 出力を[群集のスケーリング コンストレイント](Crowd Scaling Constraint)コンパウンドの[プロキシ デフォーマ名](Proxy Deformer Name)ポートにプラグインします。

  4. 親デフォーマをコンストレイントする場合は、子デフォーマにもコンストレイントが適用されるように、[群集のスケーリング コンストレイント](Crowd Scaling Constraint)コンパウンドのプロパティ エディタで[子変換コンペンセイション](Child Transform Compensation)オプションがオフになっていることを確認してください。

  5. [群集のスケーリング コンストレイント](Crowd Scaling Constraint)コンパウンドで、[スケーリング](Scaling)の XYZ 軸のいずれかまたはすべてに値を設定します。

    この例では、それぞれの軸の[スケーリング](Scaling)は、指定された範囲内のランダムな値に基づいて行われています。

  6. [群集のスケーリング コンストレイント](Crowd Scaling Constraint)コンパウンドの[実行](Execute)出力ポートを[アニメーションの状態の定義](Define Animation State)ノードの[ポーズ モディファイア](Pose Modifier)ポートに接続します。

デフォーマのポーズのコンストレイント

Crowd Pose Constraint(群集ポーズ コンストレイント)コンパウンドを使用することで、コンストレイントを 1 つしか使用しなくても、アクターのリグ プロキシのデフォーマの 3 つの変換タイプ(スケーリング、向き、位置)すべてをコンストレイントすることができます。もちろん、必要な変換のみをコンストレイントできます。

このコンパウンドを使用する手順は、上記の[群集の向きコンストレイント](Crowd Orientation Constraint)や[群集のスケーリング コンストレイント](Crowd Scaling Constraint)コンパウンドと同じですが、[群集のポーズ コンストレイント](Crowd Pose Constraint)コンパウンドで[スケーリング](Scaling)、[回転](Rotation)、[トランスレーション](Translation)パラメータの一部またはすべてに対して XYZ 軸の値を設定できる点が異なります。