Lesson 4: 低解像度シャツをシミュレートする
 
 
 

このレッスンでは、Lesson 3 で説明したワークフローを使用して、キャラクタのシャツをシミュレートします。アトリビュートとその個々の値にはバリエーションがいくつかありますが、原則は同じです。

このレッスンでは、以下の操作を行います。

レッスンの設定

説明どおりにレッスンを進めるために、レッスンを開始する前に次の手順を実行します。

  1. nCloth の高度なテクニックのフォルダを次の場所からコピーします(まだコピーしていない場合)。www.autodesk.co.jp/maya-advancedtechniques その後、AdvancedTechniques ディレクトリを Maya プロジェクトとして設定します。

    このレッスンでは、レッスンのシーン ファイルに加えて、Maya ジオメトリのキャッシュ ファイルにアクセスする必要があります。

  2. Character_LowRes_4.mb という名前のシーン ファイルを開きます。

    このファイルは、Maya プロジェクトとして設定した AdvancedTechniques ディレクトリにあります。

  3. 前のレッスンで使用した Maya シーン ファイルを使用する場合は、次のことを確認してください。
    • アニメーション レイヤ エディタ(Animation Layer Editor)で可視性をオフにして、Reference_Character オブジェクトを非表示にします。
    • Pants_HighRes オブジェクトを非表示にします。

シャツを nCloth に変換する

シャツを nCloth に変換するには

  1. アウトライナ(Outliner)で Shirt_LowRes オブジェクトを選択して表示し、それからディスプレイ > 表示 > 選択項目の表示(Display > Show >Show Selection)を選択します。
  2. 低解像度のシャツ オブジェクト(Shirt_LowRes)を選択して、 nMesh > nCloth の作成(nMesh > Create nCloth) を選択します。

    nCloth の作成オプション(Create nCloth Options)ウィンドウが表示されます。

    注:nCloth メニュー セットが Maya インタフェースに表示されても使用しないでください。nCloth の作成とコントロールには、nDynamics メニュー セットを使用する必要があります。Maya から nCloth メニューを削除する方法については、 nCloth メニュー セットが Maya に表示されるを参照してください。
  3. ソルバ(Solver) ドロップ ダウン リストから、nucleus1 を選択します。
  4. クロスの作成(Create Cloth)をクリックします。

    低解像度のシャツが nCloth オブジェクトに変換され、既存の Maya Nucleus ソルバに追加されました。

  5. 低解像度の nCloth シャツをシーンで特定しやすくするためにその名前を変更します。これを実行するには、アウトライナ(Outliner)nCloth1 をダブル クリックし、nCloth_Shirt と入力します。
  6. キーを押します。

  7. シミュレーションをキャッシュしてから再生します。

nCloth プリセットをシャツに適用する

シミュレーションを再生すると、次のことがわかります。

これらの多数のシミュレーション上の問題を同時に解決する便利な方法として、nCloth アトリビュートのプリセットを nCloth シャツ オブジェクトに適用します。

nCloth プリセットをシャツに適用するには

  1. シーン ビューで、nCloth シャツを選択します。
  2. アトリビュート エディタ(Attribute Editor)で、nCloth_ShirtShape タブを選択します。
  3. プリセット(Presets)ボタンをクリックして押したままにします。
  4. tshirt プリセットを選択してから、置き換え(Replace)tshirt > 置き換え(tshirt > Replace))を実行します。

T シャツのプリセットにより、次の重要なアトリビュート調整が行われます。

高解像度メッシュをラップする

このセクションでは、ラップ デフォーマを使用して高解像度シャツのインフルエンス オブジェクトを作成します。

高解像度メッシュをラップするには

  1. シーン ビューで、アウトライナ(Outliner)から Shirt_HighRes オブジェクトを選択して表示し、それからディスプレイ > 表示 > 選択項目の表示(Display > Show >Show Selection)を選択します。
  2. キーを押したまま nCloth シャツ オブジェクトを選択します。
  3. アニメーション メニュー セットから デフォーマの作成 > ラップ(Create Deformers > Wrap)を選択します。

    アトリビュート エディタにラップ ノードが表示され、Shirt_LowResBase オブジェクトがアウトライナに表示されます。

  4. アトリビュート エディタ で wrap2 タブをクリックします。
  5. ラップ アトリビュート(Wrap Attributes)セクションで、排他バインド(Exclusive Bind)をオンにします。
  6. Shirt_HighRes オブジェクトを非表示(Hide)にして、シミュレーションを再生します。

シミュレートされた nCloth で問題領域を特定する

シミュレーションを再生すると、次のことがわかります。

nCloth の T シャツ プリセットにより、シミュレーションの多数の問題が改良されましたが、さらに調整が必要なダイナミック プロパティ(Dynamic Properties)アトリビュートもあります。

ダイナミック プロパティ アトリビュートを編集する場合は、シミュレーションをキャッシュしてアトリビュートを調整しながら再生し、新しい設定が nCloth シャツの動作にどのように作用するか確認します。比較対象として、リファレンス キャラクタをシーンに表示することもできます。これを行うには、ディスプレイ レイヤ エディタ(Display Layer Editor)で可視(Visible)をオンにします。

シャツのダイナミック プロパティを編集するには

  1. アトリビュート エディタ(Attribute Editor)で、nCloth_ShirtShape タブをクリックします。
  2. ダイナミック プロパティ セクションで、次の設定を行います。
    • 伸長の抵抗(Stretch Resistance): 55
    • 圧縮の抵抗(Compression Resistance): 3
    • ベンドの抵抗(Bend Resistance): 0.3

  3. シミュレーションをキャッシュしてから再生します。

精度設定(Quality Settings)を編集して相互貫通を解決する

シミュレーションを再生すると、次のことがわかります。

メッシュをスムースにして相互貫通のインスタンスを削減するには、コリジョン(Collisions)精度設定(Quality Settings)を編集します。

コリジョン精度設定を編集するには

  1. アトリビュート エディタ(Attribute Editor)で、nCloth_ShirtShape タブを選択します。
  2. コリジョン セクションで、セルフ コリジョン フラグ(Self Collision Flag)完全なサーフェス(Full Surface)に設定します。
  3. 精度設定セクションで、次のように設定します。
    • 最大反復回数(Max Iterations): 12000
    • セルフ コリジョン最大反復回数(Max Self Collision Iterations): 8
    • トラップ チェック(Trapped Check)をオンにします。
    • 自己トラップのチェック(Self Trapped Check)をオンにします。

  4. シミュレーションをキャッシュしてから再生します。

シミュレーションを微調整します。

シミュレーションの精度をさらに向上させ、シャツの胸部分の重なり(フレーム 1040 参照)など、問題領域の相互貫通のインスタンスを減少させるには、押し出し(Push Out)押し出し半径(Push Out Radius)を設定します。 アトリビュート値を次の範囲に設定してみてください。

シミュレーションの特定のフレームでメッシュの複製を作成し、設定を試します。たとえば、フレーム 1040 と 1043 でメッシュの複製を作成します。シミュレーションをキャッシュし、タイムラインをスクラブしてシミュレーションを複製メッシュと比較し、アトリビュート編集の結果を確認します。

最終的な低解像度シミュレーションをシミュレート済みのリファレンス キャラクタ メッシュと比較する

このセクションでは、nCloth シャツと nCloth ズボンのオブジェクトの最終的なシミュレーション結果をシミュレート済みのリファレンス キャラクタ オブジェクト(オリジナルのシミュレート済み高解像度メッシュ)と比較します。

シミュレーションを比較するには

  1. アウトライナ(Outliner)で Shirt_LowRes オブジェクトと Pants_LowRes オブジェクトを選択して非表示にし、それからディスプレイ > 非表示 > 選択項目の非表示(Display > Hide > Hide Selection)を選択します。
  2. アウトライナ(Outliner)で Shirt_HighRes オブジェクトと Pants_HighRes オブジェクトを選択して表示し、それからディスプレイ > 表示 > 選択項目の表示(Display > Show >Show Selection)を選択します。
  3. ディスプレイ レイヤ エディタ(Displays Layers Editor)を使用して可視(Visible)をオンにし(まだ実行していない場合)、シーン ビューにReference_Character オブジェクトを表示します。
  4. シェーディング(Shading)メニューで、ワイヤフレーム付きシェード(Wireframe on Shaded)をオンにします。
  5. タイムラインをスクラブし、nCloth メッシュのアニメーションでの動作を比較します。シーンをドリーおよびタンブルし、問題領域に接近して観察できるようにします。

高解像度とリファレンス キャラクタ オブジェクトのシミュレート方法にはわずかな違いがありますが、nCloth 全体では両方とも同じように動作します。 シミュレーションをキャッシュして低解像度メッシュでアトリビュートを調整するシミュレーション ワークフローを使用し、この作業を繰り返して合計時間が削減されることを考えると、低解像度メッシュのワークフローがよい結果を生むといえます。リファレンス キャラクタ オブジェクトはシミュレーションを最適化することによって改良できますが、解像度が高いメッシュではキャッシングやシミュレーション時間が低速になり、アトリビュート調整により多くの時間を要します。