はじめに
ボタンを押下でプレイするゲームは沢山あるが、作成方法として様々な書き方があるので忘れないようにまとめてみました。
パターン① GetAxis関数を使う方法
Input.GetAxis("Horizontal")
この関数は、-1から1まで の数値をとる為、左右の矢印キーを押すと左右の移動 をすることが出来るようになる。
左側の矢印キーを押しているときは、数値が 減少 していき、『-1』になり、右側の矢印キーを押しているときは、数値が 増加 していき、『1』になる。
使用例
transform.position += new Vector3(Input.GetAxis("Horizontal") * Time.deltaTime, 0f, 0f);
現在の位置へ、新しいポジションを生成して代入する。
x座標に関数を入れることで、左右の矢印キー押下で左右に移動可能となる。
パターン② GetKey関数を使う方法
この関数は、キーを押している間、true を返す。
引数に与えている識別キーが押されている間、trueを返す関数である。
押され続けられている間は、trueを返し続ける。オート射撃とかに使うと良い。
使用例
if(Input.GetKey(KeyCode.RightArrow))
{
処理内容
}
指定したKeyCodeが押されている場合trueを返す。
こちらの関数は、指定する引数(KeyCode)を変えることで、上下左右、回転など自由な動きをすることが出来る。
一例
RightArrow | 右矢印キー |
---|---|
LeftArrow | 左矢印キー |
UpArrow | 上矢印キー |
DownArrow | 下矢印キー |
S | Sキー |
Space | スペースキー |
Return | エンターキー |
その他 押され続けている、離した時
GetKeyDown関数
キーを押したフレームの間だけ true を返す。
押し始め を検知する。
GetKeyUp関数
キーを離したフレームの間だけ true を返す。
離した瞬間 を検知する。