Blenderでのスカートのリギング その2
前回の続きの内容なので、タイトルそのまま持ってきましたが
厳密にはリギングじゃないです。タイトル詐欺ですみません。
前回はこちら。
髪の揺らし方はこちら。
はじめに
前回スカートのリギングをやってみたものの、アーマチュアが煩雑になり構築もなかなか面倒なのでもっと手軽にしたい、というのがスタートです。
できるだけ高速にシミュレーションされるのを目指します。
参考
今回の一番の核となる部分は上記動画の内容です。
一言でいうと、クロスシミュレーションを利用するメッシュのスケールをあげたら実行速度が早くなるそうです。
実践
上記動画を参考に、実際に試してみます。
モデルとモーションは下記を使用させていただいています。
モデル:ゼンレスゾーンゼロよりリナ
モーション:
<< トーレス元動画 >> ビビデバ / 星街すいせい(official) ここのダンスもかわいい!
https://www.youtube.com/shorts/5OrR0NRWrdw
<<Taro²>>【MMD】ビビデバ 公式Short動画 Ver ダンスモーション【モーション配布】
https://www.nicovideo.jp/watch/sm43742805
https://www.youtube.com/watch?v=neejNilmA5U
最初に方針を記載します。
スカートはサーフェス変形モディファイアで変形させます。
スカートはソリッド化モディファイアで厚み付けしておく必要があります。
サーフェス変形モディファイアのターゲットであるスカート変形用メッシュにクロスシミュレーションをかけることにします。
色々試してみましたが、結果スカート変形用メッシュの構成は下記の通りになりました。

各モディファイアの役割を上から記載します。
1.アーマチュア
クロスシミュレーションする前に、メッシュが体に合わせて動いてもらう必要があるので使用します。ウエイトは、腰のボーンが100%乗っていればいいと思います。
2.ジオメトリーノード
クロスシミュレーションの前にスケールを大きくするために使用しています。処理は画像の通りで、スケールをグループ入力で外出ししています。
スケールはとりあえず20にしていますが、最適が何かはわかっていません。
3.クロスシミュレーション
スカート変形用メッシュを揺らすのに使用します。直前の記事のソフトボディ同様、根本からのグラデーションの頂点グループをシェイプに設定して固定しています。
4.ジオメトリーノード
2で20倍にしたので、20で割って元の大きさに戻しています。スケールは2のスケールの逆数にすればいいです。
5.フック
クロスシミュレーションとコリジョンである程度は貫通を防げますが、完璧には難しいので、微調整用にフックモディファイアを使用しています。
下記例では、ボーンを動かして膝が貫通しないようにしています。
調整が甘く足首あたりは貫通していますが、もっとボーンを増やすか設定次第でこれも直せるはずです。


スカート変形用メッシュを設定しましたが、このままでは完全に足を貫通するので、モデルの足部分をコピーしてコリジョン用のメッシュを作成します。
クロスシミュレーション時点ではスカートを20倍したので、足も20倍します。
こちらはレンダリングする必要がないので、非表示にしてスケールを戻すこともしません。

最後にスカートのメッシュにサーフェス変形モディファイアで、スカート変形用メッシュをバインドすれば完成です。

ベイクなしのコマ落としで再生してみた結果が下記です。
髪の毛は直前の記事同様、ソフトボディで揺らしています。

若干の貫通はありますが、概ねいい感じです。
スカート変形用メッシュをもっと細分化すれば貫通を防げるのではないかと思ってやってみましたが、あまりに変形用メッシュがリアルに細かくクシャッとするので、それに合わせて変形したスカートのフリルがぐちゃぐちゃになりました。
今回みたいにスカート自体にディテールがあり、元の形を崩したくない場合はある程度変形用メッシュは粗くしておく必要があるみたいで、今回くらいがちょうどよい印象です。
まとめ
クロスシミュレーションを利用したスカートの変形についてでした。
残しておきたいことを全部書いたので、文章量のわりに密度が濃く読んでくださる人には優しくない記事になってしまった気がします。
揺れに関しては一旦まとまったので、今後は以前作ったシェーダーを使ってキャラクターを作成をしていきたいです。
