Unityメモ

Unityで学んだことをメモするやつ

Inputで入力を取得する

InputはInputManagerで設定した値を取得したりする時に使用します。

docs.unity3d.com

InputManagerはEdit > Project Settings > Inputの中にあります。 f:id:nullkun0803:20180410134225p:plain

中には色々と、入力軸が用意されています。 f:id:nullkun0803:20180410135644p:plain

Jumpにはspaceキーがもともと設定してありますが、色々と変更することも可能です。   入力の詳しい内容はこちらをご覧ください。
Unity - マニュアル: 一般的なゲーム入力

ボタンが押されたかどうかの判定は以下の関数で判定することができます。

関数名 内容
GetButton buttonName で識別される仮想ボタンを押している間 true を返します
GetButtonDown buttonName で識別される仮想ボタンを押したフレームの間だけ true を返します。
GetButtonUp buttonName によって識別される仮想ボタンを離したフレームの間だけ true を返します

以下の例はJumpが押された時にconsoleにメッセージを表示します。

//ボタンが押されて離した時に表示する
if(Input.GetButtonUp("Jump")){
    Debug.Log("ジャンプ");
}

また左右、上下の移動など、移動する値を取得したい際は以下の関数を使います。

関数名 内容
GetAxis axisName で識別される仮想軸の値を返します

こちらが矢印キーを押して、移動する例です。

//Input.GetAxis: 数値を-1〜1の間で取得する
float x = Input.GetAxis("Horizontal"); //横方向 -1 ~ 1が帰ってくる
float z = Input.GetAxis("Vertical"); //縦方向 -1 ~ 1が帰ってくる
transform.Translate(x * 0.2f, 0, z * 0.2f);