Hinge Joint
Rigidbody

Mesh Collider

Mesh Colliderメッシュのアセット からそのメッシュにもとづくコライダーを生成します。複雑なメッシュの場合、プリミティブを使用するよりも遥かに正確に衝突検出できます。Convex がオンとなっている Mesh Collider は、他の Mesh Collider と衝突することができます。

プロパティー

プロパティー 機能
Is Trigger オンにすると、コライダーはイベントのトリガーとなり、物理エンジンにより無視されます。
Material 使用する 物理マテリアル への参照。物理マテリアルによりコライダーが他と衝突したとき、どのように相互作用するかが決定されます。
Mesh 衝突判定に使用するメッシュ。
Convex オンにすると、MeshCollider は他の MeshCollider と衝突します。 Convex オンの MeshCollider は三角形面数の上限が 255 に制限されています。

説明

メッシュコライダーは、ゲームオブジェクトにアタッチされた メッシュ から、コライダーの形状を作成し、コライダーの位置とスケールを正しく設定するために、同じくアタッチされた Transform を読み込みます。この方法の利点は、コライダーの形状をオブジェクトの表示用メッシュの形状とまったく同じにできるため、より精密で正しい衝突判定ができる事です。しかし、その精密さは、プリミティブのコライダー(球、ボックス、カプセル)による衝突判定よりも、プロセッサのオーバーヘッドが高くなるので、メッシュコライダーは控えめに使った方がよいでしょう。

衝突メッシュの面は一方向です。つまり、オブジェクトが一方向で通り抜けできますが、もう一方向からは衝突できます。

メッシュコライダーには、いくつかの制限があります。

  • 凸状ではない ( Convex が有効になっていない) メッシュコライダーはリジッドボディがアタッチされていないゲームオブジェクト上でのみサポートされています。リジッドボディとメッシュコライダーを組み合わせて使いたいときは、プロパティーにある Convex にチェックを入れる必要があります。
  • In certain cases, for a Mesh Collider to work properly, you need to enable the Read/Write Enabled setting on the Model tab of the Mesh’s Model Import Settings window. These cases include:
  • 負の数での拡大/縮小 (例えば (–1, 1, 1))
  • シアートランスフォーム (例えば、回転したメッシュが拡大/縮小した親のトランスフォームを持つとき)

最適化のコツ メッシュがメッシュコライダーだけに使用される場合は、物理システムに必要でないため、Import SettingsNormals を無効にできます

Unity の 5.0 以前のバージョンには、メッシュと球での相互作用を改善するために、メッシュコライダー用の Smooth Sphere Collisions プロパティーがあります。このプロパティーは、物理エンジンによってスムーズな相互作用が標準的な挙動になる前のもので、現在では使われていません。また、オフにしても利点はありません。

Hinge Joint
Rigidbody