自己流cloth設定メモ
以前ツイートしたclothのロングスカートに気になる人が多いようだったので
解説と作り方の説明をしていきたいと思います。
作り方は自己流の為、自分がよく触る部分の説明になります。
間違ってる部分や詳しい説明がないのはご了承ください。
メッシュ作成
モデリングソフトはメタセコイアを使用しています。
メタセコイア以外でも同様の機能があると思うので他ソフトでも大丈夫だと思います。
1)筒を作成します。
基本図形からU方向は20で作成。
Y方向は1で大丈夫です。
上下の面は削除しておきます。
2)変形と細分化、頂点の結合
下側の頂点をすべて選択し、広げます。
オブジェクト→面をなめらかにする
を選択し、分割数を5で設定し細分化します。
その後、
オブジェクト→近接する頂点をくっつける
から頂点の密度が大体同じになるように結合します。
(メッシュのサイズにより変化するので上手くやってください)
unityの設定
FBX出力したものをunityにインポートします。
hierarchyにドラック&ドロップし、clothコンポーネントをセットします。
コンポーネント内
bending stiffness 布の硬さの設定 動き、見た目共に変化します。
damping 布の動きの減衰 数値が高いほどゆったり動き、重い布っぽくなる。広がりにくい
solver ferquency フレームレート数 数値が高いと貫通が減ったりするらしい。その分処理が重くなる
sleep threshold コライダーの引っかかりやすさ 数値が高いほど摩擦が高くなるイメージ
〇〇colliders 貫通しないようにする設定
cloth constraints 頂点の動く距離の制限。
←のマークを押すと設定できる。
基本的には固定する部分の選択(この設定をしないと落ちる)
数値を0にすることで固定される
ペイントを使う時はbrush radiusを0.03くらいにすると塗りやすい
根元から段々数値を大きくしていくと良い感じになる
数値は0.1~0.5くらいまでが見た目的に有効そう
vrchatではリスポーン時に荒ぶったりするのを防げるので同期ズレ等にも有効
数値を上手く設定することで形を成形することもできる
(メッシュで作ってダイナミックボーンのが良いのであまり使えなさそう)
数値の入れ方は人やメッシュによって違うので自分が良いと思うものを模索して欲しい
self-collision 頂点同士のぶつかりの判定を設定する ドレープの形も変わる。
コンポーネントを複数入れている場合にこれを設定するとunityがまず落ちる。
←の右側を押すと設定できる
頂点をすべて選択した状態でself-collision and inter-collisionのチェックボックスをオンにする
そうするとコンポーネント内に数値を設定する箇所が表示される
self collision distance 頂点(コライダー)のサイズを設定する
それぞれのコライダーの球がぶつからないぎりぎりのサイズに設定する
ぶつかるとずっとガタガタ動いたり爆発したりするため注意
メッシュの頂点の密度がバラバラだと上手く設定するのが難しい
おまけ
clothにはウェイトをのせたり、コンポーネントを複数使用したり出来るのですが
設定がまた変わってくるので上記を理解したうえで挑戦してみてください。
大体設定は上記で説明した点を触れば大体のことが出来ると思うのですが
私的な意見とすれば、VRM対応出来ない(今後使えない技術の可能性)
処理が重い。PC依存の処理(同期ズレ)
unityのアップデートで設定が変わるなど良くない点が多いです。
もちろんclothの良いところもあるのですがダイナミックボーンのが良いことのが多いです。
導入する際は覚悟をして勉強してくださいませ。

.png)
.png)
.png)
.png)
.png)
.png)