始めに作成した「PlayerController」のスクリプトには変数が用意されていません。
そのため現在、Playerの移動速度は一定値です。
そこで今後のために、まずは修飾子のついた変数を用意しましょう。
こちらにアクセスすることでPlayerの移動速度を可変できる状態にすることが目的です。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerController : MonoBehaviour
{
private float moveSpeed; // <= 移動速度用の変数を追加
// Start is called before the first frame update
void Start()
{
moveSpeed = 0.05f; // <= 移動速度用に、値を代入
Debug.Log(moveSpeed); // <= 代入確認用
}
// Update is called once per frame
void Update()
{
// 左矢印が押された時
if(Input.GetKey(KeyCode.LeftArrow))
{
// 左に「3」動かす
transform.Translate(-moveSpeed, 0, 0); // <= x の値を -0,05f から -moveSpeedに変更する
}
// 右矢印が押された時
if(Input.GetKey(KeyCode.RightArrow))
{
// 右に「3」動かす
transform.Translate(moveSpeed, 0, 0); // <= x の値を -0,05f から moveSpeedに変更する
}
}
}
この変更により、移動に利用する x の値を 0.05f という固定値から、変数へと変更することができました。
今回は固定値と同じ値をmoveSpeedに代入しています(Debug.Logで確認しています)。
同じ動きをするか、確認をしてみましょう。
これにより、Playerの移動に関する x の値は可変化することが可能になりました。
例えば、moveSpeed = 0.1f になれば、現在の移動速度の2倍の速さで移動することになります。