液体シミュレーション作成の最初の手順は、水のスタイルの nParticle システムを作成することです。そして、このシステムをモデリングしたポリゴンのピッチャーにコンストレインさせます。これは、オブジェクトを埋め尽くす(Fill Object)を使用した nParticle 作成手法で行います。
水(Water)スタイルの nParticle を使用すると、パーティクルのレンダー タイプ(Particle Render Type)がメタボール サーフェス(Blobby Surface)に設定され、あらかじめ液体シミュレーション(Liquid Simulation)アトリビュートを含むいくつかの nParticleShape アトリビュートが設定されています。
水(Water)スタイルの nParticle オブジェクトを作成するには
水(Water)プリセットを選択すると、液体シミュレーションのいくつかの nParticleShape アトリビュートがあらかじめ設定されています。
パーティクルで埋め尽くすオプション(Particle Fill Options)ウィンドウが表示されます。
二重壁をオンにすると、ピッチャーのジオメトリの厚みが確実に考慮されます。つまり、パーティクルがポリゴン壁の間ではなく確実にピッチャーの空のボリュームだけを埋めます。
nParticle オブジェクトの名前を変更すると、シーンにオブジェクトが複数ある場合に識別しやすくなります。
nParticle がメッシュのピッチャーの底を通リ抜け、消えていっています。これは、nParticle がピッチャーを認識していないためです。
このチュートリアルでは、グラスに水を注ぐピッチャーをシミュレートするときに、ピッチャーとグラスのメッシュを両方ともパッシブ コリジョン オブジェクトに変換する必要があります。
nParticle をピッチャーのメッシュと相互に作用させるには、パッシブ コリジョン オブジェクトに変換して同一の nucleus システムに割り当てる必要があります。
ピッチャーとグラスのメッシュをパッシブ コリジョン オブジェクトに変換するには
コリジョンの作成(Make Collide)ウィンドウが表示されます。
再生してみると、nParticle がここで期待されているとおりに動作していないのがわかります。水と違って、ピッチャーの底にすぐに落ちずにゆっくりと落ちているため、スローモーションで再生しているように見えます。
nParticle のシミュレーションを開始する前に、nucleus ソルバのプロパティをシミュレーションに合わせて調整することが重要です。Maya Nucleus ソルバのプロパティは、特定のソルバ システムのメンバーであるすべてのノードに作用する内部フォースを制御します。注意すべき最も重要な nucleus ソルバ アトリビュートの 1 つとして空間スケール(Space Scale)があります。空間スケールをデフォルト値の 1 に設定すると、nucleus ソルバはオブジェクトがメートル単位でスケールされているかのように重力(Gravity)と風(Wind)をオブジェクトに適用します。
空間スケールの値を下げると、nParticle システムは実際よりもかなり小さいサイズであるかのように評価されます。したがって、nParticle への重力の影響が大きくなったように表示されます。
再生してみると、nParticle がピッチャーに収まってはいますが、今度はピッチャーの容量に占める割合が少なすぎます。また、nParticle に圧力がかかるか圧縮されて押しつぶされているように見えます。次のセクションでは、nParticle を液体のような外見にする液体シミュレーション(Liquid Simulation)アトリビュートの調整に移ります。