Blog

新人日記

MAYAのnParticleで液体を表現

こんにちは、新人デザイナーの有松です。
ついに花粉の季節が到来し、目薬とティッシュが手放せない日々を過ごしております。

さて、前回の新人日記でご紹介させていただいたXGenに引き続き、今回も同じくMayaに標準搭載されているnParticleというパーティクルシミュレーション機能を使用して、液体を表現していきたいと思います。というのも、近年エフェクト制作などに特化したソフトなどがすでに登場しており、Mayaでパーティクルシミュレーションを行うという機会自体が少ないのでは……?と感じ、Mayaでエフェクトを作成してみたいという方には、まずは簡単に制作できるものからトライされるといいかも、と思ったからです。今回例としてご紹介する水の表現方法など、簡単なものであれば、スクリプトなどを使用せずに作成することもできますので、ぜひ試していただければと思います!

手順①~③

まず、初めに水を溜める側と注ぐ側のモデルを作成します(①)。次にnParticleのCreate OptionsからWaterを選択したあと、同じくnParticleのCreate Emitterでエミッタを作成し、適切な位置に移動をさせます(②)。一旦再生してみると丸い球が複数発生していることが分かります(③)。これで準備は完了です!

手順④

次に、アトリビュートエディタを使用して液体に見えるように数値を調整していきます。エミッタを選択し、エミッタのタイプをボリュームに変えます。そして、発生させる方向やスピードなどを設定します。再生して確認すると最初に比べてスピードや、発生している範囲が変化していることが分かります(④)。

手順⑤、⑥

このままだと、モデルを貫通したままなので、二つのモデルを選択し、nClothからCreate Passive Colliderで当たり判定を設定します。再生するとしっかりモデルに沿って流れていることが確認できます(⑤)。次に、アトリビュートエディタでパーティクルのサイズとパーティクル同士の衝突の強さ、液体シミュレーションの値などを設定し、再生しながら調整していきます。この時点で少し液体らしくなってきたと思いますが、量が少ないためエミッタのレートを増やします(⑥)。(増やす分だけ動作が重くなるため、様子を見ながら増やしてください)

手順⑦、⑧

最後に、このパーティクルをポリゴンメッシュに変換します。nParticleを選択し、ModifyのConvertからnParticle to Polygonsを選択後、アトリビュートエディタのOutput Meshでしきい値やメタボールの半径などを変更して、再生するとパーティクルがポリゴンメッシュになっていることが確認できます(⑦)。そして、このメッシュにマテリアルを適応し(今回はAI Standard Surfaceを使用しています)レンダリングを行うと水が出来上がりました!(⑧)

モデルにもマテリアルを適応し、数値を調整してレンダリングしたもの

実際に、アニメーションさせると上記の動画のような状態になります。
今回は、ほとんどを初期設定に近い値で制作しているため、より細かく設定を行なえば、さらにリアルな水の表現や、様々な液体を再現することが出来ます。また、nParticle自体は液体だけでなく、炎や煙など他にも多くのものをシミュレーションで再現することが出来ますので、興味を持っていただけた方は是非色々と挑戦してみていただければと思います!

次の記事へ