前回の続きです。

プレイヤーをCharacter Controllerで操作しようとしてます。

PlayerのGameObjectにCharacter Contollerをアタッチ。

また、PlayerのGameObjectに、プレイヤー制御用のC#スクリプト(PlayerController.cs)を記載してます。

 

PlayerController.csでは

・変数でCharacterController controller;

を記載して

Start()にて

・controller = GetComponent<CharacterController>();

で必須コンポーネントとして取得済。

 

で

void Update()にて

 if (controller.isGrounded)

としてPlayerが地面に面してたら、

・キーボードの左右カーソルで回転

・上カーソルで前方へ移動

・ジャンプキーでジャンプ

を制御できるようにスクリプト(PlayerController.cs)を組んでいるのですが

なぜかisGroundedが正常検知されず(汗

一切プレイヤーが動きません。

 

こちらのWEBサイトにて、レイキャストを使って地面に当たってる・当たってない判定を

する方法が記載されていたので試してみました。

 

 

 

なんとか代用の_isGroundで判定できるようになったので、ひとまず細かいことは後回しにして

プレイヤーが左右キーで回転し、前方に移動できるようになったのでひとまず安心しました。

 

 

※少し古いですが書籍「Unity2021 3D/2Dゲーム開発」を参考としてます。