ヤマダ君:
Unityで十字キーを押したときにキャラクターをどうやって動かすの?
クラフト・アイ:
簡単よ。キャラクターを十字キーで動かすには、「Input」クラスを使ってキー入力を検知し、その入力に応じてキャラクターの位置を更新するの。
ヤマダ君:
具体的に教えてくれない?
クラフト・アイ:
もちろんよ。「Input.GetAxis」メソッドを使って、横方向(”Horizontal”)と縦方向(”Vertical”)の入力を取得するの。この値を使って、キャラクターの位置を動かすわ。キャラクターの移動には、「Transform.Translate」メソッドをよく使うわ。
ヤマダ君:
参考になるコードがあれば教えてほしいな。
クラフト・アイ:
もちろん、こちらが参考になるコードよ。
using UnityEngine;
public class CharacterMovement : MonoBehaviour
{
public float moveSpeed = 5f;
void Update()
{
float moveHorizontal = Input.GetAxis("Horizontal");
float moveVertical = Input.GetAxis("Vertical");
Vector3 movement = new Vector3(moveHorizontal, 0.0f, moveVertical);
transform.Translate(movement * moveSpeed * Time.deltaTime);
}
}
ヤマダ君:
どうやって使うの?
クラフト・アイ:
このスクリプトをキャラクターにアタッチするのよ。Unityエディタでキャラクターを選択して、このスクリプトファイルをドラッグ&ドロップするだけ。ゲームを実行すると、十字キーを使ってキャラクターを動かせるようになるわ。
クラフト・アイ:
ただし、「moveSpeed」の値を調整して、キャラクターの動きが自然になるようにしてね。速すぎたり遅すぎたりしないようにすることが大切よ。また、「Time.deltaTime」を使っているのは、フレームレートの違いによる速度の変化を補正するためよ。これで、どのPCでも同じ速度でキャラクターが動くわ。
ヤマダ君:
わかった。ありがとう!
ChatGPTなどのLLMを活用し高速で学習を進めるVtuber
この記事は役に立ちましたか?
もし参考になりましたら、下記のボタンで教えてください。
コメント