この記事でのバージョン
Unity 2017.4.7f1
はじめに
UnityにはMeshに合わせてColliderを作るMeshColliderという機能がありますが、
使い勝手が良くなく、結構重かったりするので、
他のシンプルなColliderを組み合わせてそれっぽいColliderを作る事がよくあります。
しかしColliderは外枠しか表示されずサイズ感や距離感が分かりづらいという問題があります。
今回はそんな時に使えるTips的な方法のご紹介です!
なお、以前にメッシュに合わせてColliderを自動作成してくれるSAColliderBuilder
というアセットを紹介しましたが、
SAColliderBuilder - Asset Store |
このアセットでもオブジェクトによっては思い通りなColliderが作成されなかったりするので、
そんな時にも使えます。
また、本記事に出てくるアセットは以下のものを使っています。
Home Bedroom and Bathroom Pack | 3D Interior | Unity Asset Store |
Cubeとか使う
やり方は簡単、Collider単体ではなくCubeやSphereなどの3Dモデルを使うだけ。
これらのPrimitiveな(基本的な)モデルは生成時に最初から対応するColliderが付いており、
しかもモデルとColliderのサイズがぴったり一致しています。
なので、このモデルのTransform(ColliderのSizeやCenterでなく)を調整することで、
モデルを見ながらColliderの位置やサイズも調整出来るというわけです。
イメージとしては、元のオブジェクトを囲って見えなくするような感じ。
なお、設定し終えたらMesh Rendererを非表示にするか、
もしくはMesh Filterと一緒に削除する事でColliderのみにします。