インフルエンス オブジェクト

 
 
 

オブジェクトを作成して、スムーズ スキンのシェイプにインフルエンスを与えることができます。このオブジェクトをインフルエンス オブジェクトと言い、スキンが変形するときに、移植手術で埋めこまれたもののような働きをします。たとえば、球を作成して、それをキャラクタの特定のポーズ設定で、筋肉や骨の膨らみをシミュレートするのに使うことができます。また、インフルエンス オブジェクトを使ってデフォメーションをスムーズにし、曲げるときに陥没する部分の空間領域を維持することもできます。

次の手順では、球をインフルエンス オブジェクトとして使い、Jackie の腕を曲げると突き出る肘をシミュレートします。インフルエンス オブジェクトを使うには、スケルトンがバインド ポーズ(スキンが Jackie にバインドされたときの元のポーズ)であることが必要です。

スケルトンをバインド ポーズに戻すには

  1. 選択ツール(Select Tool)をクリックして Jackie の選択を解除します。
  2. 修正 > ノードの評価 > IK ソルバ(Modify > Evaluate Nodes > IK Solvers)をオフにします。

    IK ハンドルを使ってキャラクタのポーズを設定したら、スケルトンをバインド(T スタンス)ポーズに戻す前にこの手順を実行する必要があります。

  3. スケルトンのルートである back_root を選択します。
  4. スキン > バインド ポーズに移動(Skin > Go to Bind Pose)を選択します。
  5. ハイパーグラフ(Hypergraph)の ikHandleLeftArm を選択します。移動ツール(Move Tool)を使用して、任意の方向に少しハンドル マニピュレータを移動します。マウスのボタンを放しても腕が移動せず、IK ハンドル マニピュレータがジョイント チェーンの末端の適切な位置にスナップされます。これまでにポーズ設定した他の IK ハンドルにもこの手順を繰り返し実行します。
  6. 修正 > ノードの評価 > IK ソルバ(Modify > Evaluate Nodes > IK Solvers)をオンにします。

    この手順を実行して IK ソルバを使用可能にし、シーン内で IK ハンドルをもう一度操作できるようにします。

インフルエンス オブジェクトとして使用する球を配置するには

  1. Jackie のサーフェス(スケルトン上の任意の場所)を クリ クし、マーキング メニューから動作 > テンプレート(Actions > Template)を選択します。

    Jackie をテンプレート化すると、この後の手順で誤って Jackie を選択してしまうことがありません。

  2. 球を作成し(作成 > ポリゴン プリミティブ > 球(Create > Polygon Primitives > Sphere)を選択)、elbow_influence という名前を付けます。
  3. 球が Jackie のどのジョイントよりもわずかに小さくなるようにスケールします(下の図を参照)。
  4. 球を移動して、そのサーフェスをスキン内で肘が突き出る場所に配置します。球の曲率を再度変更して、曲げた腕から突き出た肘先のように見せることもできます。たとえば、球を特定の寸法にスケールして押しつぶしたシェイプにしたり、個々の頂点を移動することもできます。上面ビューでの球のシェイプと位置は次のようになります。

    球の位置とスケールの精度はここではあまり重要ではありません。あとで位置とスケールを微調整して、得られるデフォメーションの質を向上させることができるためです。

球をインフルエンス オブジェクトにするには

  1. ハイパーグラフ(Hypergraph)で Jackie を選択し、Shift キーを押しながら elbow_influence を選択します。
  2. スキン > スムーズ スキンの編集 > インフルエンスの追加(Skin > Edit Smooth Skin > Add Influence) > を選択します。インフルエンスの追加オプション(Add Influence Options)ウィンドウで編集 > 設定のリセット(Edit > Reset Settings)を選択し、追加(Add)ボタンをクリックします。

    Maya ではこの操作は数分以内に完了します。インフルエンス オブジェクトを肘の適切な位置に固定しておくには、left_shoulder ジョイントに対してペアレント化します。

  3. ハイパーグラフ(Hypergraph)で shift キーを押しながら、elbow_influence、elbow_influenceBase、および left_shoulder ジョイントの順番で選択します。

    選択順序は重要です。ペアレント オブジェクトは最後に選択してください。

  4. p キーを押して、肘ノードを left_shoulder ジョイントの下にペアレントします。

    elbow_influence ノードは、left_shoulder ジョイントの下のスケルトン階層に表示されます。

    elbow_influenceBase はベース オブジェクトとして認識されています。これにはインフルエンス オブジェクトの頂点の位置情報が格納されています。ベース オブジェクトを left_shoulder ジョイントに対してペアレント化するのは、肘が別の位置に移動しても、インフルエンス オブジェクトの頂点が必ず肘の正しい位置にくるようにするためです。この手順以外でベース オブジェクトを扱うことはありません。

  5. Jackie を右クリックして、動作 > テンプレート解除(Actions > Untemplate)を選択します。次に行うスキンのデフォメーションを確認するには、Jackie をテンプレートとして表示する場合よりもスムーズ シェーディングで表示するほうが簡単です。
  6. 上面ビューのパネル メニューから、表示 > ジョイント(Show > Joints)をオフにし、ジョイントがスキンを見る邪魔にならないようにします。
  7. 各腕の IK ハンドル(ikHandleLeftArm と ikHandleRightArm)を使って、次の位置で腕のポーズを設定します。

    左肘は右肘より自然に見えます。肘を曲げているときのデフォメーションを調整するには、elbow_influence の位置、スケール、および回転を変更します。

    インフルエンス オブジェクトがスキンを突き抜けていないか心配する必要はありません。アニメーションをレンダーするときには表示されないからです。