/// <summary>
        /// デフォルトのEventSystemで扱う入力設定を追加する
        /// </summary>
        /// <param name="inputManagerGenerator">Input manager generator.</param>
        private static void AddStdInputSettings(InputManagerGenerator inputManagerGenerator)
        {
            // 横方向
            {
                var name = "Horizontal";
                inputManagerGenerator.AddAxis(InputAxis.CreateKeyAxis(name, "a", "d", "left", "right"));
            }

            // 縦方向
            {
                var name = "Vertical";
                inputManagerGenerator.AddAxis(InputAxis.CreateKeyAxis(name, "s", "w", "down", "up"));
            }

            // 決定
            {
                var name = "Submit";
                inputManagerGenerator.AddAxis(InputAxis.CreateKeyAxis(name, "", "enter", "", "space"));
            }

            // キャンセル
            {
                var name = "Cancel";
                inputManagerGenerator.AddAxis(InputAxis.CreateKeyAxis(name, "", "escape", "", "joystick button 1"));
            }
        }
 /// <summary>
 /// グローバルな入力設定を追加する(OK、キャンセルなど)
 /// </summary>
 /// <param name="inputManagerGenerator">Input manager generator.</param>
 private static void AddGlobalInputSettings(InputManagerGenerator inputManagerGenerator)
 {
     /*
      * // 横方向
      * {
      *  var name = "Horizontal";
      *  inputManagerGenerator.AddAxis(InputAxis.CreatePadAxis(name, 0, 1));
      *  inputManagerGenerator.AddAxis(InputAxis.CreateKeyAxis(name, "a", "d", "left", "right"));
      * }
      */
 }
        /// <summary>
        /// プレイヤーごとの入力設定を追加する
        /// </summary>
        /// <param name="inputManagerGenerator">Input manager generator.</param>
        /// <param name="playerIndex">Player index.</param>
        private static void AddPlayerInputSettingsForXBox(InputManagerGenerator inputManagerGenerator, int playerIndex)
        {
            if (playerIndex < 0 || playerIndex > 3)
            {
                Debug.LogError("プレイヤーインデックスの値が不正です。");
            }

            int joystickNum = playerIndex + 1;

            string strIndex = joystickNum.ToString();

            // 左スティック
            {
                inputManagerGenerator.AddAxis(
                    InputAxis.CreatePadAxis(XVInputConstants.LAxisX + strIndex, joystickNum, 1));
                inputManagerGenerator.AddAxis(
                    InputAxis.CreatePadAxis(XVInputConstants.LAxisY + strIndex, joystickNum, 2));
            }

            // 右スティック
            {
                inputManagerGenerator.AddAxis(
                    InputAxis.CreatePadAxis(XVInputConstants.RAxisX + strIndex, joystickNum, 4));
                inputManagerGenerator.AddAxis(
                    InputAxis.CreatePadAxis(XVInputConstants.RAxisY + strIndex, joystickNum, 5));
            }

            // 十字キー
            {
                inputManagerGenerator.AddAxis(
                    InputAxis.CreatePadAxis(XVInputConstants.DPadAxisX + strIndex, joystickNum, 6));
                inputManagerGenerator.AddAxis(
                    InputAxis.CreatePadAxis(XVInputConstants.DPadAxisY + strIndex, joystickNum, 7));
            }

            // トリガー
            {
                inputManagerGenerator.AddAxis(
                    InputAxis.CreatePadAxis(XVInputConstants.LTrigger + strIndex, joystickNum, 3));
                inputManagerGenerator.AddAxis(
                    InputAxis.CreatePadAxis(XVInputConstants.RTrigger + strIndex, joystickNum, 3));
            }
        }
        public static void ResetInputManager()
        {
            Debug.Log("インプットマネージャーの設定を開始します。");
            InputManagerGenerator inputManagerGenerator = new InputManagerGenerator();

            Debug.Log("設定を全てクリアします。");
            inputManagerGenerator.Clear();

            Debug.Log("プレイヤーごとの設定を追加します。");
            for (int i = 0; i < 4; i++)
            {
                AddPlayerInputSettingsForXBox(inputManagerGenerator, i);
            }

            Debug.Log("グローバル設定を追加します。");
            AddGlobalInputSettings(inputManagerGenerator);

            Debug.Log("スタンダードな設定を追加します。");
            AddStdInputSettings(inputManagerGenerator);

            Debug.Log("インプットマネージャーの設定が完了しました。");
        }