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

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

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

レッスンの設定

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

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

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

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

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

  3. キャラクタの胴体と靴をアニメートするジオメトリ キャッシュをインポートします。詳細については、 ジオメトリ キャッシュをインポートするを参照してください。
  4. nCloth シャツのシミュレーションを高速化するには、nCloth ズボンの新規キャッシュを作成するか、または前のレッスンで作成したズボンの nCache を使用します。

    新しい nCache を作成するには、アウトライナ(Outliner)nCloth_Pants を選択し、nCache > 新規キャッシュの作成(nCache > Create New Cache)を選択します。

    前のレッスンで作成した nCloth ズボンの nCache を使用するには、必要に応じてキャッシュを nCloth オブジェクトに再コネクトしてください。詳細については、 既存のキャッシュにオブジェクトを再コネクトするを参照してください。

前のレッスンで使用した Maya シーン ファイルを使用する場合は、次のことを確認してください。

シャツを 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 menu set appears in Mayaを参照してください。
  3. ソルバ(Solver) ドロップ ダウン リストから、nucleus1 を選択します。
  4. クロスの作成(Create Cloth)をクリックします。

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

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

  6. アウトライナnCloth_Shirt を選択し、nCache > 新規キャッシュの作成(nCache > Create New Cache)を選択して nCloth シャツのシミュレーションをキャッシュします。
  7. シミュレーションを再生します。

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

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

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

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

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

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

nCloth シャツを選択してから nCach > キャッシュの置き換え(nCach > Replace Cache) を選択してシミュレーションをキャッシュし、それから再生して結果を観察します。

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

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

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

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

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

  6. Shirt_HighRes オブジェクトを非表示(Hide)にします。

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

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

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

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

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

  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. シミュレーションをキャッシュして( nCache > キャッシュの置き換え(nCache > Replace Cache))、再生します。

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

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

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

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

このレッスンでは、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. タイムライン(Timeline)をスクラブして、アニメーションでの nCloth メッシュの動作を比較します。タイムラインをスクラブしながらシーンをドリー、タンブルし、問題領域に接近して観察できるようにします。
    注:シミュレーションを再生またはスクラブしたときにシーン ビューで Reference_Character がアニメートされない場合は、必要に応じてリファレンス キャラクタのキャッシュをその個々のオブジェクトに再コネクトしてください。 既存のキャッシュにオブジェクトを再コネクトするを参照してください。

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