/// <summary>
        /// プレイヤーごとの入力設定を追加する
        /// </summary>
        /// <param name="inputManagerGenerator">Input manager generator.</param>
        /// <param name="playerIndex">Player index.</param>
        private static void AddPlayerInputSettings(InputManagerGenerator inputManagerGenerator, int playerIndex)
        {
            if (playerIndex < 0 || playerIndex > 3)
            {
                Debug.LogError("プレイヤーインデックスの値が不正です。");
            }
            string upKey = "", downKey = "", leftKey = "", rightKey = "", attackKey = "";

            GetAxisKey(out upKey, out downKey, out leftKey, out rightKey, out attackKey, playerIndex);

            int joystickNum = playerIndex + 1;

            // 横方向
            {
                var name = string.Format("Player{0} Horizontal", playerIndex);
                inputManagerGenerator.AddAxis(InputAxis.CreatePadAxis(name, joystickNum, 1));
                inputManagerGenerator.AddAxis(InputAxis.CreateKeyAxis(name, leftKey, rightKey, "", ""));
            }

            // 縦方向
            {
                var name = string.Format("Player{0} Vertical", playerIndex);
                inputManagerGenerator.AddAxis(InputAxis.CreatePadAxis(name, joystickNum, 2));
                inputManagerGenerator.AddAxis(InputAxis.CreateKeyAxis(name, downKey, upKey, "", ""));
            }


            // 攻撃
            {
                //var axis = new InputAxis();
                var name   = string.Format("Player{0} Attack", playerIndex);
                var button = string.Format("joystick {0} button 0", joystickNum);
                inputManagerGenerator.AddAxis(InputAxis.CreateButton(name, button, attackKey));
            }
        }
        /// <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"));
            }

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

            // 決定
            {
                var name = "OK";
                inputManagerGenerator.AddAxis(InputAxis.CreateButton(name, "z", "joystick button 0"));
            }

            // キャンセル
            {
                var name = "Cancel";
                inputManagerGenerator.AddAxis(InputAxis.CreateButton(name, "x", "joystick button 1"));
            }

            // ポーズ
            {
                var name = "Pause";
                inputManagerGenerator.AddAxis(InputAxis.CreateButton(name, "escape", "joystick button 7"));
            }
        }