Unity事例ノート

UNITY

Colliderを使った接触判定

コライダーを使用したオブジェクトの接触判定を作成してみましょう。

Cubeに新しくスフィアコライダーを付けて接地の判定エリアを作成。

クリックでジャンプし、地面に触れている間はtrueを返します。

関連記事:
【Unity C#】着地していればジャンプ可能
【Unity C#】Raycastによる接地判定
【Unity C#】Raycastによる特定オブジェクトの接触判定
【Unity C#】左右にRaycastの接触判定をつくる
【Unity C#】斜めに向けたRaycastで衝突判定

コライダーによる着地状態のフラグ

PlaneとCubeを作成。

Cubeは地面の上に配置し、リジッドボディを追加します。

ゲームビューではこのように見えています。

新しくSphere Collider を追加し、Yを-0.5まで下げ、トリガーにするにチェックを入れます。

シーンビューで真横から見ると、このように見えています。

GroundCheck.csを作成し、Cubeに追加します。

GroundCheck.csを記述します。

ゲームプレイして、画面上をクリックしてみましょう。

地面から離れると、Is Groundのフラグがfalseに変わります。

クリックするたびにどんどん浮上しないように、接地しているときだけ、ジャンプできるようにしています。

関連記事:
【Unity C#】着地していればジャンプ可能
【Unity C#】Raycastによる接地判定
【Unity C#】Raycastによる特定オブジェクトの接触判定
【Unity C#】左右にRaycastの接触判定をつくる
【Unity C#】斜めに向けたRaycastで衝突判定