入力されたキー名を取得する

Unity

入力されたキー情報を取得します。

UnityのInputクラスをから取得

UnityのInputクラスから取得する方法です。
アルファベットや数字を取得する分にはこれが一番簡単で良いと思います。
ただ、試した感じスペースキーが取れなかったり、特殊キーの入力を取得したい場合には不向きな気がします。

        // 何かのキーが押下されたら
        if (Input.anyKeyDown)
        {
            // 入力されたキー名
            string keyStr = Input.inputString;

            Debug.Log(keyStr);
        }

KeyCodeからキー名を判断

KeyCodeに登録されているものなら全て確認可能な方法です。
左側のCtrlキー、右側のCtrlキー、など
より細かく取得したい場合はKeyCodeから判断するのが良いかもしれません。

    void Update()
    {
        // 何かのキーが押下されたら
        if (Input.anyKeyDown)
        {
            foreach(KeyCode code in Enum.GetValues(typeof(KeyCode)))
            {
                if (Input.GetKeyDown(code))
                {
                    // 入力されたキー名を表示
                    Debug.Log(code.ToString());
                }
            }
        }
    }

コメント

タイトルとURLをコピーしました