はじめに
仕事が終わった後、何かコードが書きたくなり...
なんとなく興味のあったゲーム制作(未経験)を始めてみることに
とりあえず簡単な処理を書いて、プレイヤーを動かしてみる
素人なのでお粗末な内容でも足からず...
プレイヤーの左右移動の実装
プレイヤーを A/Dキー(←→キー) で 左右に移動 させる機能を実装する
手順
- プレイヤー(四角い図形)を作成
- A/Dキー(←→キー)の入力を取得するコードを書く
- コードをPlayerにアタッチ
- 動作確認
1. プレイヤー(四角い図形)を作成
2D Object から Square
を選択し、プレイヤーとして配置
この白い四角がPlayer
2. A/Dキー(←→キー)の入力を取得するコードを書く
キー入力を検知して、プレイヤーを移動させるスクリプトを作成
Player.cs
using UnityEngine;
public class Player : MonoBehaviour {
// 移動スピード
public float speed = 5f;
// フレームごとに発火する
void Update() {
// A/Dキー or ←→キー
float move = Input.GetAxis("Horizontal");
// キャラクターの移動
transform.position += new Vector3(move * speed * Time.deltaTime, 0, 0);
}
}
- Update()
- 毎フレーム実行 される(60FPSなら1秒間に60回)
- Input.GetAxis("Horizontal")
- Aキー or ←キー を押すと -1、Dキー or →キー を押すと 1 を取得
- Time.deltaTime
- フレームレートに依存せず一定速度で移動
3. コードをPlayerにアタッチ
作成したスクリプト Player.cs を Player オブジェクトにアタッチ
4. 動作確認
speedをいじると移動速度も変わる
はい、とりあえず動かせました
これで、プレイヤーの左右移動の実装完了
また機能を追加したらまとめます!