Unity5版 Collider2Dまとめ


Unity5版 Collider2Dまとめ

Unity5の2D用の主なColliderについて簡単にまとめておきます。

3D用のColliderに関するまとめはこちらの記事をご覧ください。


Collider 2Dコンポーネントについて

・2D用のコライダーと3D用のコライダーはひとつのオブジェクトに共存することはできません。
→Box ColliderをもっているオブジェクトにBox Collider 2Dを追加しようとしてもエラーとなります。この場合、先にBox Colliderを削除しておく必要があります。※これは他のPhysicsコンポーネントとPhysics 2Dコンポーネントの間にも成り立ちます。
・2D用のコライダーは、Z座標の値によらず衝突します。
→TransformのPositonの値が(1,1,1)のオブジェクトと、(1,1,100)のオブジェクトに2D用のコライダーを追加しX-Y平面で衝突すると、通常通りの判定が行われます。


Collider 2Dの種類とプロパティ

Unityに用意されているCollider 2Dの主な種類と、そのプロパティについてまとめておきます。

Box Collider 2D

ボックスコライダー2Dは長方形のコライダーです。
足場や障害物などのあたり判定として幅広く使用されます。
特定のエリアなどに設定してIs Triggerをオンにすることで、空間への進入判定などにも使用できます。

WS000007 - コピー
図1-1:Box Collider 2D

WS000007
図1-1:Box Collider 2Dのインスペクター

表1:Box Colliderのプロパティ

プロパティ 説明
Material 使用するPhysic2D Material(2D用の物理マテリアル)を選択できます。
Physic2D Materialには、衝突したときの摩擦や反発といった物理挙動が設定できます。
Is Trigger チェックを入れると、コライダーは物理エンジンから障害物とみなされなくなります。
衝突判定だけ行われて、オブジェクト自体はすり抜けるようになります。
Used By Effector Platform Effector 2DなどのEffectorを使用する場合にチェックを入れます。
Offset TransformコンポーネントのPositonの値からのズレを設定します。(X,Y)
Size コライダーの大きさを決定します。(X,Y)

Circle Collider 2D

Circle Collider 2Dは円形のコライダーです。
円形のオブジェクトや、Box Collider 2Dの角を消したい場合などに使用します。

WS000008 - コピー
図2-1:Circle Collider 2D

WS000008
図2-2:Circle Collider 2Dのインスペクター

表2:Circle Collider 2Dのプロパティ

プロパティ 説明
Material 使用するPhysic2D Material(2D用の物理マテリアル)を選択できます。
Physic2D Materialには、衝突したときの摩擦や反発といった物理挙動が設定できます。
Is Trigger 使用するPhysic2D Material(2D用の物理マテリアル)を選択できます。
Physic2D Materialには、衝突したときの摩擦や反発といった物理挙動が設定できます。チェックを入れると、コライダーは物理エンジンから障害物とみなされなくなります。
衝突判定だけ行われて、オブジェクト自体はすり抜けるようになります。
Used By Effector Platform Effector 2DなどのEffectorを使用する場合にチェックを入れます。
Offset TransformコンポーネントのPositonの値からのズレを設定します。(X,Y)
Radius 円の半径を決定します。

Edge Collider 2D

辺のコライダーです。
オブジェクトの一部にあたり判定をつけたり、関節を追加することで複雑な折れ線のコライダーを作成できます。
関節の追加はEdit Colliderをクリックして行います。
追加したPoints(関節)はControlキーを押しながら選択すると削除できます。

WS000009 - コピー
図3-1:Edge Collider 2D

WS000009
図3-2:Edge Collider 2Dのインスペクター

表3:Edge Collider 2Dのプロパティ

プロパティ 説明
Material 使用するPhysic2D Material(2D用の物理マテリアル)を選択できます。
Physic2D Materialには、衝突したときの摩擦や反発といった物理挙動が設定できます。
Is Trigger チェックを入れると、コライダーは物理エンジンから障害物とみなされなくなります。
衝突判定だけ行われて、オブジェクト自体はすり抜けるようになります。
Used By Effector Platform Effector 2DなどのEffectorを使用する場合にチェックを入れます。
Offset TransformコンポーネントのPositonの値からのズレを設定します。(X,Y)
Size 線と線をつなぐ関節の数です。(プロパティ編集不可)
Element 関節の座標です。(プロパティ編集不可)

Polygon Collider 2D

Polygon Collider 2Dは、多角形コライダーです。
頂点の数と位置を自由に編集できるため、複雑な形のコライダーを自由に作成することができます。
編集はEdit Colliderをクリックして行います。
頂点の削除はControlキーを押しながら削除したい頂点を選択します。

WS000010
図4:Polygon Collider 2D

WS000012
図3-2:Polygon Collider 2Dのインスペクター

表4:Polygon Collider 2Dのプロパティ

プロパティ 説明
Material 使用するPhysic Material(物理マテリアル)を選択できます。
Physic Materialには、コライダーが衝突したときの物理挙動が設定できます。
Is Trigger 使用するPhysic2D Material(2D用の物理マテリアル)を選択できます。
Physic2D Materialには、衝突したときの摩擦や反発といった物理挙動が設定できます。
Used By Effector Platform Effector 2DなどのEffectorを使用する場合にチェックを入れます。
Offset TransformコンポーネントのPositonの値からのズレを設定します。(X,Y)
Size 頂点の数です。(プロパティ編集不可)
Element 頂点の座標です。(プロパティ編集不可)

最後までお読みいただきありがとうございます。
← Unityの記事一覧にもどる

こちらの記事もおすすめです。
Unityのマイナーだけど便利な関数を使ってみた【Vector3.SmoothDamp】
Unityで動く床を実装するときにハマる罠とその解決方法

  • このエントリーをはてなブックマークに追加

PAGE TOP