IK システム上にペアレント コンストレイントを適用する

 
 
 

メカニカル アームに持ち上げられるカーゴ ボックスをアニメートするには、アニメーションの特定の時間にアームと一緒に移動するように、カーゴ ボックスをメカニカル アームにコンストレイントする方法が必要です。これをペアレント コンストレイントを使って実行します。

ペアレント コンストレイントがオブジェクトに適用されると、コンストレイントされているオブジェクトは、あたかもコンストレイントするオブジェクトの子ノードのように動作します。

1 つのオブジェクトに複数のコンストレイントを適用することができます。ペアレント コンストレイントのウェイト アトリビュートを変更することによって、各コンストレイントがオブジェクトに対して持っているインフルエンスを変更することができます。ウェイト アトリビュートはアニメート可能なパラメータで、特定のフレームでオンまたはオフになるように設定できます。

このレッスンでは、カーゴ ボックスをフロア上の ArmControl と Platform の両方にコンストレイントします。これらの 2 つのペアレント コンストレイントのウェイト アトリビュートをアニメートすることによって、アニメーション中の特定の時間にインフルエンスを与えているコンストレイントに基づいて、カーゴ ボックスがある場所から別の場所に移動します。

ペアレント コンストレイントをセットアップするには、コンストレイントされたオブジェクトをそのインフルエンスが始まるかまたは終わる位置に配置してから、設定する必要があります。

カーゴ ボックスにペアレント コンストレイントを設定するには

  1. スライド ビューのパネル メニューでシェーディング > すべてをスムーズ シェード(Shading > Smooth Shade All)を選択します。
  2. スライド ビューのパネル メニューでパネル > パース ビュー > パースビュー(Panels > Perspective > persp)を選択します。
  3. ハイパーグラフ(Hypergraph)で ArmControl を選択します。
  4. チャネル ボックス(Channel Box)で、移動 Y (Translate Y)移動 Z (Translate Z)の値を以下のように設定します。
    • 移動 Y (Translate Y): -9
    • 移動 Z (Translate Z): 0

下の図のようにカーゴ マグネットがカーゴ ボックスの上に直接乗るようにアームが移動します。メカニカル アームの全体が見えるように、必要に応じてビューをトラック、タンブル、またはドリーします。

  1. ハイパーグラフ(Hypergraph)で、ArmControl を選択した状態で Shift キーを押しながら CargoBox ノードを選択します。

    コンストレイントを適用するときは、選択する順序が重要です。最初にコンストレイントするオブジェクトを選択してから、次にコンストレイントされる項目を選択する必要があります。

  2. メイン メニューで、コンストレイント > ペアレント(Constrain > Parent) > を選択します。
  3. ペアレント コンストレイント オプション(Parent Constraint Options)ウィンドウで、以下を実行します。
    • 編集 > 設定のリセット(Edit > Reset Settings)を選択して、ツールを既定の設定にします。
    • 追加(Add)ボタンをクリックします。

    カーゴ ボックスが ControlArm にコンストレイントされます。新しいコンストレイント ノードが、ハイパーグラフ内の CargoBox ノードの下に作成されています。メカニカル アームを移動すると、コンストレイントが適用されているためカーゴ ボックスも一緒に移動します。

  4. ハイパーグラフ(Hypergraph)で、SwivelBase だけを選択します。
  5. チャネル ボックス(Channel Box)で、SwivelBase の回転 Y (Rotate Y)の値を以下のように設定します。
    • 回転 Y (Rotate Y): -100

    メカニカル アームとカーゴ ボックスが次の図のように配置されます。

  6. ハイパーグラフ(Hypergraph)で、Platform を選択してから Shift キーを押しながら CargoBox ノードを選択します。
  7. メイン メニューで、コンストレイント > ペアレント(Constrain > Parent)を選択します。

    カーゴ ボックスが Platform にコンストレイントされます。これがカーゴ ボックスに対する 2 番目のコンストレイントです。

  8. ハイパーグラフ(Hypergraph)で、CargoBox だけを選択します。
  9. チャネル ボックス(Channel Box)で、CargoBox のペアレント コンストレイントを表示します。

    CargoBox には、2 つのペアレント コンストレイント(Arm Control Platform)が適用されています。チャネル ボックス(Channel Box)ArmControl W0Platform W1 の隣の数値設定は、各ペアレント コンストレイントが CargoBox に対して持っているインフルエンス ウェイトを示しています。この時点で、各インフルエンス ウェイトは、1 の値に設定されています。メカニカル アームを移動すると、カーゴ ボックスが最初の位置と 2 番目の位置の間に移動します。これは、この時点で 2 つのコンストレイントがカーゴ ボックスに対して同じインフルエンスを持っているためです。

シーン内のオブジェクトをアニメートする前に各コンストレイントの既定のウェイト値をリセットして、一方のペアレント コンストレイントがカーゴ ボックスにインフルエンスを持たない場合に、もう一方はフル インフルエンスを持つようにする必要があります。

ペアレント コンストレイントにウェイトを設定するには

  1. ハイパーグラフ(Hypergraph)で、CargoBox だけを選択します。
  2. チャネル ボックス(Channel Box)で以下のように設定します。
    • Platform W1: 0
  3. SwivelBase だけを選択します。
  4. チャネル ボックス(Channel Box)で、回転 Y (Rotate Y)の値を 0 に設定します。

    メカニカル アームとカーゴ ボックスが逆に回転します。

  5. ハイパーグラフ(Hypergraph)で、CargoBox だけを選択します。
  6. メイン メニューで、コンストレイント > レスト位置の設定(Constrain > Set Rest Position)を選択します。

    カーゴ ボックスのレスト ポジションを設定して、コンストレイントが機能していないときのカーゴ ボックスの位置を設定します。レスト ポジションが設定されていない場合は、カーゴ ボックスは 2 番目のコンストレイントの位置に移動します。

  7. チャネル ボックス(Channel Box)で以下のように設定します。
    • ArmControl W0: 0

    この時点では、両方のペアレント コンストレイントのウェイト アトリビュートが 0 に設定されているため、どちらもカーゴ ボックスに対してインフルエンスを持っていない状態です。シーン内のコンポーネントをアニメートするときに、コンストレイントするオブジェクト(Arm または Platform)のどちらにフル インフルエンスを持たせるかに応じて、ペアレント コンストレイントにウェイト アトリビュートが設定され、キーフレーム設定されます。

次の手順では、IK システムのアニメーションのアクションを計画します。