キャラクター操作については、いくつかスクリプトの書き方があります。
いちばん簡単に、十字キー操作できるスクリプトを、ご紹介しましょう。
スクリプトを作らずに、十字キー操作を実装する方法は、こちらをご覧ください。
関連記事:
向きを変えて移動する十字キー操作
簡単に十字キー操作できるスクリプト(transform.Rotate)
簡単に十字キー操作できるスクリプト(transform.Translate)
進行方向へ回転するプレーヤー操作1
進行方向へ回転するプレーヤー操作2
階段を上るオブジェクト移動
キー操作で上下左右、前後の移動
上下左右に1ずつ動かす
進行方向に傾きながら移動
CharacterController.Moveによる移動操作
Input.GetAxisを使う
平面とCubeのオブジェクトを作成します。
Cubeにカラーをつけ、Yを0.5にして、床に接地させました。
シーンビューではこのように配置されています。
Cubeを動かせるように、スクリプトを作成しましょう。
PlayerMove.csを作成し、Cubeに追加します。
PlayerMove.csを書きます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerMove : MonoBehaviour { private float speed = 3.0f; void Update() { float moveX = Input.GetAxis("Horizontal") * Time.deltaTime * speed; float moveZ = Input.GetAxis("Vertical") * Time.deltaTime * speed; transform.position = new Vector3 ( transform.position.x + moveX, transform.position.y, transform.position.z + moveZ ); } } |
速度フィールドには、Cubeを動かすスピードとして数値を入力しましょう。
ゲームプレイしてみます。
十字キーでも動作しますが、[W][A][S][D]の各キーでも操作可能です。
オブジェクトをとりあえず動かしたい場合は、Input.GetAxisを使った簡単なスクリプトでつくることができます。
関連記事:
向きを変えて移動する十字キー操作
簡単に十字キー操作できるスクリプト(transform.Rotate)
簡単に十字キー操作できるスクリプト(transform.Translate)
進行方向へ回転するプレーヤー操作1
進行方向へ回転するプレーヤー操作2
階段を上るオブジェクト移動
キー操作で上下左右、前後の移動
上下左右に1ずつ動かす
進行方向に傾きながら移動
CharacterController.Moveによる移動操作