- UnityにCollider(コライダー)ってあるけどいまいちわからない
その悩みを解決します。
結論としては当たり判定を行うときにつかる図形です。では具体的に見ていきます。
2Dでも3Dでも一緒です。
【Unity】Collider(コライダー)は当たり判定に必要なオブジェクトにつける図形
Collider(コライダー)は当たり判定に必要なオブジェクトにつける図形です。Collider同士が接触することでオブジェクトの当たり判定を検出できます。
Colliderは1つのオブジェクトに複数アタッチすることができます。もちろん1つでも構いません。
Colliderをつけるとどうなるのか
いまプレイヤーに【Box Collider 2D】をつけました。プレイヤーにまわりにある緑の枠がありますよね。これがColliderの範囲です。
ここに他のオブジェクトが触れると衝突したことがわかったり、衝突した後の動きをしてくれます。
プレイヤーに重力をつけて床に落としてみた
プレイヤーに重力をつけて落としてみました。(床にもColliderをつけています)
床とプレイヤーの間にすき間がありますね。
プレイヤーのColliderの形状が大きいことが原因ですね。緑の枠がプレイヤーの画像より、大きいですよね。
Colliderの形状は自分で変換することができるので心配はいりません。ただColliderの形状によって、オブジェクト同時の衝突に影響を与えるということです。
Colliderの使い方
Colliderをアタッチする方法と形状を変更する方法です。いろんなColliderがありますが、ここでは【Box Collider 2D】を利用します。後ろに記述しています。
なんでもいいのでオブジェクトをSceneビューに設置
【オブジェクトをSceneビューにドラッグ&ドロップ】
オブジェクトを設置してください。
Colliderをアタッチ
【オブジェクト選択】→【Inspector】→【Add Component】→【Colliderと検索欄】→【Box Collider 2Dを選択】
【Box Collider 2D】をオブジェクトにアタッチしています。
現在のColliderの形状を見る
【形状を確認】
Unityがオブジェクトに合わせて大まかにColliderの大きさを設定してくれているので、形状を変更する必要はないかもしれません。
今回は練習もかねて変更していきます。
Colliderの形状を変更する
【Box Collider 2D】→【OffsetとかSizeを変更する】
Colliderによって少しだけ操作方法が変わりますが、基本は同じです。OffsetではColliderの位置、SizeではColliderの大きさを変更することができます。
Colliderは複数つけることができる
体は【Box Collider 2D】、頭は【Circle Collider 2D】というように、Colliderを複数つけることができます。
当たり判定と一緒に学んだ方が良き( ・∇・)
Collider単体の説明だとこれぐらいしか説明できません。当たり判定の記事と一緒に学ぶと非常に理解しやすいです。
【2D】Collider(コライダー)の種類
Box Collider 2D | 四角形(正方形・長方形) |
Circle Collider 2D | 円形 |
Polygon Collider 2D | 多角形 |
Edge Collider 2D | 線で自由に描く |
Capsule Collider 2D | カプセル型 |
Composite Collider 2D | BoxCollider2DとPolygonCollider2Dの融合 |
2DのオブジェクトにこのようなCollider(コライダー)をアタッチすることができます。
Box Collider 2D
四角い形のColliderです。長方形や正方形などの四角い形状に変形することができます。代表的なColliderだと勝手に思っています。
他のColliderと組み合わせしやすいです。
Circle Collider 2D
丸いやつです。顔とか丸い部分に使えますね。
あとはボールとか、穴あきドーナツは2つ【Circle Collider 2D】を組み合わせればできますね。
Polygon Collider 2D
多角形のColliderの形状です。
自動的にオブジェクトの形と合わせてくれます。
Edge Collider 2D
自由に線をひいて、形状を変更することができます。
関連記事:1分わかる!【EdgeCollider2D】の説明と使い方(自由に決めれる)
Capsule Collider 2D
カプセル型のColliderです。角がない。まさにカプセル。
Composite Collider 2D
準備中。
【3D】Collider(コライダー)の種類
Box Collider | 立方体 |
Sphere Collider | 球体 |
Capsule Collider | 円柱 |
Mesh Collider | メッシュに基づくコライダー |
Wheel Collider | 陸上車用の特殊コライダー |
Terrain Collider | Terrain Dataに基づくコライダー |
3DオブジェクトにこのようなCollider(コライダー)をアタッチすることができます。
Box Collider
立方体のColliderです。X方向にもY,Z方向にも引きのばすことができます。
Sphere Collider
円ですね。野球ボールとかバスケットボールに使います。あと人のあたまとかです。
Capsule Collider
カプセル型のColliderです。ロケットに使えそう。
Mesh Collider
追記予定
Wheel Collider
追記予定
Terrain Collider
追記予定
まとめ
- Collider(コライダー)は当たり判定に必要なオブジェクトにつける図形
- Colliderがあることによって当たり判定を行える(スクリプトで制御する方法もあり)
- 緑の色のわくがCollider
- Colliderを学ぶには当たり判定を学ぶのが良き
- Colliderにはさまざまな種類がある
当たり判定の記事の記事は【ゼロから】Unityでの当たり判定を理解するときに見るべき5記事をご覧ください。
さぎのみや(@saginomiya8)でした。
*追記予定の部分は他のページにまとめたほうがいいかなって思ってます。まだ未定なので許してください。
Polygon Collider 2Dって自動的にColliderの形状をオブジェクトに合わせて変更してくれるのか。昨日気づいてツイートしようと思ったけど、わすれちゃったよ!てか朝寒い寒い寒い寒い( ・∇・)#unity #ゲーム開発 #アプリ開発 pic.twitter.com/ObEeFUO2Bi
— さぎのみや (@saginomiya8) November 24, 2018
コメント