Unity事例ノート

UNITY

Colliderを使った接触判定

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

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

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

関連記事:
着地していればジャンプ可能
Raycastによる接地判定
Raycastによる特定オブジェクトの接触判定
左右にRaycastの接触判定をつくる
斜めに向けたRaycastで衝突判定
触れた相手のコライダーを削除(無効にする)
オブジェクトの半分まで入れば実行
プレーヤーがひっくり返らないようにする

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

PlaneとCubeを作成。

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

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

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

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

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

GroundCheck.csを記述します。

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

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

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

関連記事:
着地していればジャンプ可能
Raycastによる接地判定
Raycastによる特定オブジェクトの接触判定
左右にRaycastの接触判定をつくる
斜めに向けたRaycastで衝突判定
触れた相手のコライダーを削除(無効にする)
オブジェクトの半分まで入れば実行
プレーヤーがひっくり返らないようにする

SCHOOL教室案内