コライダー(Collider)の種類について

ここではUnityで当たり判定を表現するときに使われるコライダー(Collider)の種類について説明します。


※この記事で使用しているUnityのバージョン:Unity2019.1

コライダー(Collider)とは

コライダーは物理演算の当たり判定を表現するためのコンポーネントです。これがついたゲームオブジェクトはリジッドボディを持つゲームオブジェクトと衝突するようになります。

なおリジッドボディがなくコライダーだけがついたゲームオブジェクトは、リジッドボディのついたゲームオブジェクトと衝突はしますが物理演算の影響を受けることはありません。なのでステージの壁など「当たり判定は欲しいが、物理演算で動かす必要のないオブジェクト」にはコライダーだけをつけるようにします。

あと、コライダーは一部を除いて「トリガー」にすることができます。コライダーをトリガーにすると衝突判定は行われなくなりますが、その当たり判定内に他のゲームオブジェクトが侵入したときに特殊なメソッドを呼び出すことができるので、例えば「範囲内に入ったことを検知する」といった処理を簡単に作ることができて便利です。

色々なコライダー

Unityには標準で色々な形のコライダーが用意されています。コライダーは一つのゲームオブジェクトにいくつでも追加できますが、3D用と2D用に分かれていてそれぞれが同じオブジェクトに共存することはできないので注意してください。

3D用コライダー

主な3D用コライダーは次の5種類です(※その他にもあります)。

  1. ボックスコライダー(Box Collider)
  2. カプセルコライダー(Capsule Collider)
  3. スフィアコライダー(Sphere Collider)
  4. メッシュコライダー(Mesh Collider)
  5. ホイールコライダー(Wheel Collider)

ボックスコライダー(Box Collider)

ボックスコライダーの形状ボックスコライダーの設定項目

立方体の形をしたコライダーです。

カプセルコライダー(Capsule Collider)

カプセルコライダーの形状カプセルコライダーの設定項目

カプセル状の形をしたコライダーです。よく人型のキャラクターの当たり判定として使われます。

スフィアコライダー(Sphere Collider)

スフィアコライダーの形状スフィアコライダーの設定項目

球体の形をしたコライダーです。

メッシュコライダー(Mesh Collider)

メッシュコライダーの設定項目

3Dモデルのメッシュ形状に合わせた形になるコライダーです。他のコライダーよりも複雑な形状にできますが、その分処理が重くなります。

ホイールコライダー(Wheel Collider)

ホイールコライダーの設定項目

車の車輪用のコライダーです。設定項目が色々ありますね。詳しくは公式マニュアルの「Wheel Collider」を参照してください。

2D用コライダー

主な2D用コライダーは次の4種類です(※その他にもあります)。

  1. 2Dボックスコライダー(Box Collider 2D)
  2. 2Dサークルコライダー(Circle Collider 2D)
  3. 2Dカプセルコライダー(Capsule Collider 2D)
  4. 2Dポリゴンコライダー(Polygon Collider 2D)

2Dボックスコライダー(Box Collider 2D)

2Dボックスコライダーの形状 2Dボックスコライダーの設定項目

四角い形のコライダーです。

2Dサークルコライダー(Circle Collider 2D)

2Dサークルコライダーの形状 2Dサークルコライダーの設定項目

丸い形のコライダーです。

2Dカプセルコライダー(Capsule Collider 2D)

2Dカプセルコライダーの形状 2Dカプセルコライダーの設定項目

カプセル状の形をしたコライダーです。

2Dポリゴンコライダー(Polygon Collider 2D)

2Dポリゴンコライダーの形状の例 2Dポリゴンコライダーの設定項目

自由な形状に変更できるコライダーです。上の画像では五角形ですが、「Edit Collider」や「ポイント」の項目から好きな形にすることができます。