【Maya】わかりやすいnClothの使い方。基本設定/固定(形状記憶)/旗の作例

はじめに。

こんにちは!!マサ@annoonblogです。今回はnClothの基本的な使い方を簡単な旗の作例でご紹介します!!僕も仕事でテントを作ったり、ちょっとした布の質感を追加する時にはよくnClothを使っています。硬いシルエットのモデルに布のパーツを付け加えるとモデルがさらに魅力的になったり、背景に風のアニメーションのついた旗を配置する事で動きを出す事ができたりとアクセントをつけるにはぴったりですよね!!nClothにはたくさんのパラメータがあるのですが、最低限覚えておいた方がいい項目もまとめまてみました!!
それではさっそくいってみましょう!!!

この記事で覚えられるTIps
・nClothの設定
・衝突用geoの設定
・重力の設定
・布の質感の設定
・形状を固定する方法

1.基本形状の作成

まずはnClothでシミュレーションする為のモデルを作りましょう。今回はとてもシンプルに平面と細長いシリンダーを作りました。

nClothのシミュレーションでは布の細かいしわの形状を作るので、ポリゴン数がある程度多くないとディテールが表現できません。そこでこの平面をsmoothを使って細分化します。細分化しすぎるとシミュレーションが重くなるので注意してください(汗)

2.nClothの設定

次に旗となる平面を選択してFX→nCloth > Create nClothで平面をクロス化します(下図のアイコンをクリックでも大丈夫です)

次にFX→nCloth > Create Passive Collider衝突用のgeoの設定をします。今回は旗の部分とほとんど衝突しませんがポールの部分を選択して設定しました(下図のアイコンをクリックでも大丈夫です)

次に旗の部分をバーテックス表示にして固定したいポイントを選択します。その後にそのポイントを固定したいモデル(今回はポール部分)を選択します。そしてFX→nConstraint→Point to surfaceをクリックします。これで選択したポイントの部分が動かなくなります。

最後にクロス化した旗の部分を選択後FX→Fields/Solvers→Gravityをクリックして重力を加えます。設定が必要な項目はここまでです。

3.布の質感と風の調整

一通り必要な設定が終わったので試しに、下部タイムラインの再生ボタンを押してみましょう!!!なんと旗が動きました!!!が、旗がすぐに下に落ちてしまいイメージしていた動きではありません(涙)

そこでイメージに近づける為に布の質感と風や重力のパラメーターを調整します。まずは布の質感からいってみましょう!!!
out linerにあるnClothをクリックし、Attribute EditorをみるとPresets*というボタンがあるのでクリックします。

すると色々な布のプリセットが表示されるので、自分のイメージに近そうなものを選びます。今回はT-shortを選択してみました。このプリセットの選択によってシワの出来具合や衝突用のオブジェクトとぶつかった際の摩擦の強さ等が変わるので、色々と試してみて好みのものを探してみて下さい。

次にout linerにあるnucleusノードをクリックして、Attribute Editorで各パラメータを調整します。よく使う項目を下記にまとめました。

【nucleusの項目】
重力(Gravity)→重力の強さを調整する項目です。
大気の密度(Air Density)大気の密度を調整する項目です。値が小さいほど、オブジェクトに作用する大気摩擦が小さくなり、0にすると真空状態になります。少し数値を変更するだけでシミュレーションに大きな影響があるので、色々調整してみると面白いです。
風速(Wind Speed)→風の強さを調整出来る項目です。
風向(Wind Direction)→風の向きを調整出来る項目です。
風のノイズ(Wind Noise)→風にランダム性を加えられるパラメータです。僕はシワをもっとつけたい時に値を大きくしています。

【nClothの項目】
Collisions > Friction→摩擦の強さを調整する項目です。値を大きくするほど布が滑りにくくなります。
Collisions > Stickiness→衝突用オブジェクトに対する粘着性を調整する項目です。値を大きくするほどくっつきやすくなります。
Dynamic Properties > Stretch Resistance→数値を大きくするほど布が伸びなくなります。
Dynamic Properties > Bend Resistance→布の曲がり易さを調整する項目です。値を小さくするほど布が曲がるようになります。

もしも色々調整してみても思い通りの結果にならない場合はnucleusのSpace Scaleの値が適切かどうか確認してみて下さい。デフォルトでは1になっていますが、これはnucleusが1ユニット1メートルで計算しているという事になります。もし、Mayaの作業単位をセンチメートルにしている場合はこの値を0.01にする事で適切な結果を得られます。ちなみに作業単位の確認、変更はpreferencesから行う事ができます。

これらのパラメータを調整した結果、より自然な結果を得る事ができました!!!

ここまでのおさらい
1.布のモデルを作る
2.衝突用のモデルを作る
3.モデルを細分化する
4.布のモデルにnClothを適用する
5.衝突用のモデルにPassive Colliderを適用する
6.布のモデルの固定したいポイント(バーテックス)と固定先のオブジェクトを選択してPoint to surfaceを適用する
7.布のモデルにGravityを適用する
8.各パラメータを調整してイメージに近づける

4.布の形状を固定する方法

ここからはおまけのTIpsです!!布の形状を固定する方法は簡単です!!タイムラインの固定したい場所でシミュレーションを止めたら、Delete historyをしてヒストリーを消します。これで形状が固定されます(そのままシミュレーションを続けたい場合は複製してからDelete historyしましょう)

そしてnClothのいいところはアイデア次第で様々な形状が作れるというところです。下の画像は僕が簡単にテストしたものですが、このように衝突用のリングを作りシミュレーションすればテントやカーテンのような形状を作ったりする事も可能です。僕の知る限り、そのような形状を作る時はまずnClothで基本的な形状を作り、その後スカルプトするという方法をとるアーティストが多いと思います。

更に僕が完璧な形状を保存する為によく使う機能がブレンドシェイプです。色々パラメータを調整してシミュレーションを繰り返しても、なかなか全ての部分に置いてイメージ通りのシワや形状を得るのは難しいです。そんな時に部分的にシミュレーションがうまくいったモデルを複製→delete historyしておき、最後にブレンドシェイプで完璧な部分を合体させる方法です。これはかなり使えるtipsなので是非試してみて下さい!!

次回はnClothに厚みをつける方法を紹介したいと思います。
今回も最後まで読んでいただいてありがとうございました!!!

今後も役立つ情報を発信していくのでTwitterフォロー是非よろしくお願いします!!!

関連書籍

アニメ面白ネタまとめ記事もありますので、仕事で疲れた時は楽しんでみてください!!笑

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です