UnityのClothコンポーネントを使ってセーラー服の襟を揺らしてみます。
体の一部から複製して作った襟にClothコンポーネントをつけるとどうしても崩れてしまいました。
そこで、BlenderでCircleメッシュから襟を新規作成しました。すると、正常にClothコンポーネントが使えるようになりました。
そしてスカートの記事と同様に自動でウェイトを付けた後に、物理演算で揺らしたい部分のウェイトを0にしました。
そして、アニメーションで動かしたい部分はEdit cloth constraintsで固定しました。
Clothの使い方はこちら
コライダーを付けて貫通を防ぐ
背中など襟が当たる部分にコライダーをつけて、Clothコンポーネントにアタッチして、体と襟が衝突できるようにします
Clothを衝突させる
一つのコライダーでは防ぎきれないので、まず上下に2つ付けました。
これでアニメーションさせると、襟がこのコライダーの上に乗って裏返ってしまいます。
コライダーを上に移動させて、コライダーが肩の部分の襟と重なると、襟が下から押されて肩が盛り上がってしまいます。
襟が裏返るのを防ぐ
そこで、襟がひっくり返らないようにもう一つコライダーを付けました。
これは首のボーンの子オブジェクトである空のゲームオブジェクトに追加しました。
これで襟が裏返らなくなりました。
スカートと襟のために6つのコライダーを使っています。