Tech

【Unity】Raycastを利用して接地判定を行う

投稿日:

はじめに

こんにちはsuzukiです。久しぶりにunityを触り色々忘れてしまっていたので、改めて学び直しております。
今回は接地判定の利用について簡単にまとめていこうと思います。

今回やりたいこと

unityのStandardAssetでジャンプを行うキャラクターは簡単に利用できるのですが、ジャンプを自分で設定するにはいくつかのハードルがあります。今回は内容はそのうちの接地判定について説明します。

色々な接地判定

検索すると様々な接地判定方法が見つかります。
・Rayを利用する方法
・CharacterControllerを利用する方法
・CheckSphereを利用する方法
平らなフィールドで利用する場合はCharacterControllerが簡単なのでおすすめなのですが、凸凹なフィールドなどを想定するのであれば単体で使わない方が良さそうです。
今回はRayを利用する方法を説明していきます。

Rayとは

Rayとは和訳すると光線という意味でワールド座標から方向を決めて生成します。
あたり判定や接地判定で使われるのがRaycastという機能になります。
イメージとしてオブジェクトから下向きに光線を放ち、その光線が他のオブジェクトにヒットするかという判定を行えます。
あるオブジェクトの接地判定の際には
そのオブジェクトの中央から足元まで光線を放ち、その足元の光線が他のオブジェクトにぶつかっているかどうかで判定できます。

接地判定

接地判定を行う場合は下記のようなコードで可能です。
Rayのコードについて、接地判定を行いたいオブジェクトの座標から、↓方向を指定します。
RayCastの最大距離をオブジェクトの高さ/2+少し余裕を持たせるぐらいに設定しの接地判定を行います。

ジャンプのコードを記述

実際に接地している際にジャンプをさせるコードを書いてみました。

さいごに

今回はシンプルにRaycastを使う方法を説明しました。StandardAssetのロジックではそのほかに接地判定として経過時間を持って正確性をあげるコードが書かれていたり、CharacterControllerの接地判定でfalseの場合のみ今回のようなRaycastを利用した判定を行なう方法があったりとかなり奥が深いです。
次回はこちらの記事をもとにキャラクターにアニメーションを設定していきます。

おすすめ書籍

Unityの教科書 Unity2019完全対応版 2D&3Dスマートフォンゲーム入門講座 作って学べる Unity 超入門 スラスラ読める Unity C#ふりがなプログラミング

blog-page_footer_336




blog-page_footer_336




-Tech
-

執筆者:

免責事項

このブログは、記事上部に記載のある投稿日時点の一般的な情報を提供するものであり、投資等の勧誘・法的・税務上の助言を提供するものではありません。仮想通貨の投資・損益計算は複雑であり、個々の取引状況や法律の変更によって異なる可能性があります。ブログに記載された情報は参考程度のものであり、特定の状況に基づいた行動の決定には専門家の助言を求めることをお勧めします。当ブログの情報に基づいた行動に関連して生じた損失やリスクについて、筆者は責任を負いかねます。最新の法律や税務情報を確認し、必要に応じて専門家に相談することをお勧めします。


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

Go言語

Golang で図形描画してみた

1 はじめに2 Golangで画像描画する方法3 ggでの画像描画3.1 導入3.2 基本的な画像描画4 ジェネレーティブしてみた5 さいごに6 おすすめ書籍 はじめに 今回は、Goで2Dグラフィック ...

UserNotificationsの使い方について

1 はじめに2 UserNotificationsフレームワーク3 基本実装3.1 デリゲートの設定3.2 ユーザー許可3.3 デバイストークン取得後3.4 バックグラウンドで通知受信3.5 フォアグ ...

BlueZとは? bluetoothctlとPythonから使用する方法を紹介!

1 はじめに2 BlueZとは?2.1 D-Busとは?3 bluetoothctlでのペアリング3.1 ペアリング4 Pythonでの実装4.1 bluezeroでのペアリング実装5 さいごに6 お ...

C# マルチキャストデリゲートの備忘録

1 はじめに2 C#のデリゲートについて2.1 デリゲートの定義3 マルチキャストデリゲートについて3.1 追加方法3.2 削除方法4 さいごに5 おすすめ書籍 はじめに こんにちはsuzukiです。 ...

iOS13ダークモード対応

1 はじめに2 一時しのぎ3 実装3.1 UI Element Colors3.2 Color Set3.3 コードで描きたい3.4 カスタムのカラーを定義する3.5 画像をモードで動的に変更したい4 ...

フォロー

blog-page_side_responsive

2021年5月
 1
2345678
9101112131415
16171819202122
23242526272829
3031  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。