夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

MagicaCloth 2のMesh Clothを使用する

本日はUnity枠です。

先日からUnity6を触っています。

Unityを触るにあたって取り急ぎサンプルプロジェクトを動かしてみるというのは昨日を知ることやバージョンによるエラーの違いを知れるためよく行っているのですが、今回も例のごとくユニティちゃんKAGURAのCandy Rock Starのサンプルプロジェクトを動かしました。

この際にユニティちゃんの髪や振袖などが針金のようにがちがちいなってしまっていました。

これはサンプルプロジェクトの問題ではないのですが、今回はMagicaClothを使用して髪の毛をサラサラにしていきます。

〇環境

・Windows11PC

・Untiy6

・Magica Cloth 2 2.8.0

※本記事はユニティちゃんライセンスに従って記述しています。

〇MagicaCloth2とは?

MagicaCloth2はUnity DOTS(Data-Oriented Technology Stack)を使用したクロスシュミュレーションシステムで、DynamicBoneと同等以上の高度な揺れモノを実現できます。

購入と導入に関しては以前記事にしています。

redhologerbera.hatenablog.com

今回はMesh Clothの機能を使用していきます。

ヒエラルキーウィンドウからCreate OtherMagica Cloth2Magica Clothを選択します。

これによってMagica Clothオブジェクトが配置されます。

このオブジェクトはMagicaClothの設定を行うオブジェクトになります。

②インスペクターウィンドウからMeshClothCloth TypeMesh Clothに変更します。

③次にSource Renderersの+アイコンを選択してレンダラーを登録する配列の枠を作ります。

④ユニティちゃんの髪の毛のオブジェクトのレンダラーを設定します。

⑤次にペイントアイコンを選択します。

⑥シーンウィンドウに新しいウィンドウが表示されます。

ここでは頂点ペイントを設定して揺れ幅を設定します。

この頂点ペイントはMagicaClothコンポーネントReduction Settingから最適化が可能です。

最適化により頂点数を減らすことができます。この設定は負荷や当たり判定などに依存してきます。

⑦次にペイントウィンドウからMoveが設定されている状態でFillを選択します。

これによって一度すべての頂点が動く設定で塗りつぶしされます。

この状態でFixedモードで頭に接続している部分の頂点を塗りつぶします。

これによって赤い部分は頭と一緒に動きそれから先はクロスシュミュレーションがかかるようになります。

⑧この状態で実行すると髪の毛が揺れることが確認できます。

回転動作などにも対応して滑らかに揺れます。

以上がMagicaCloth 2のMesh Clothになります。

Unity6でも問題なく動作しました。