前の記事でキャラクターに物理演算で動くスカートを履かせましたが、スカートの腰部分が固定されて動かないので少し不自然です。
そこで、スカートの上部分は足などと一緒にアニメーションで動くようにして、下の方だけ物理でひらひらと動くようにしてみます。
まず、Blenderのオブジェクトモードで体などのメッシュと一緒にスカートとボーンも同時選択します。ボーンが最後に選択されるようにします。
選択したら、Ctrl + P から 「With Automatic Weights」をクリックして、メッシュに自動でウェイトを付けます。
これでスカートもアニメーションで体と一緒に動くようになります。スカートの下の方はアニメーションで動かないようにするために、スカートのウェイトを編集します。
そのためには、ボーン→スカート の順に同時選択した後、Ctrl + Tab からWeight Paintモードに切り替えます。
このモードでは、Ctrlキーを押しながらボーンを左クリックすると、そのボーンと関連してスカートに付けられたウェイトが色で表示されます。
青い部分はウェイトが0で赤い部分は最大の1のウェイトが付いています。
このボーンが選択された状態で、Tabキーを押して編集モードにし、アニメーションさせたくない部分の頂点を選択します。
右上の「Toggle X-Ray」をオンにすると、向こう側の頂点も選択できるようになります。
この状態で、Bキーで矩形選択すると簡単です。
頂点を選択したら、プロパティの逆三角形のマークをクリックして、頂点グループのウェイトを0にして、Assighで適用します。
ウェイトペイントモードに戻すと、選択した部分のウェイトが0になっていることがわかります。
UnityでClothコンポーネントをつける
アニメーションのついたモデルをFBX形式でUnityでインポートして、スカートにClothコンポーネントを付けます。
UnityのClothの使い方
体のアニメーションと連動して動かしたい部分は固定します。
また、スカートと衝突させたい部分にコライダーを付けて、そのコライダーをClothコンポーネントにアタッチしました。
すると、スカートの上部はアニメーションで、下部分は物理で動くようになりました。