/// <summary>
        /// 添加输入控制的映射方法
        /// </summary>
        /// <param name="interval">有效输入的间隔,类似于AABB左左右右的未想好</param>
        public void AddControlBinding(string axisName, System.Action <float> cb, float interval = 0.2f)
        {
            if (cb == null)
            {
                Debug.LogError(Time.frameCount + "|" + this + "|AddControlBinding|no|callback|for|" + axisName);
                return;
            }

            if (string.IsNullOrEmpty(axisName))
            {
                Debug.LogError(Time.frameCount + "|" + this + "|AddControlBinding|no|axisName");
                return;
            }

            KInputStruct inputStruct = new KInputStruct();

            inputStruct.cb       = cb;
            inputStruct.interval = interval;

            if (inputCallbackMap.ContainsKey(axisName))
            {
                inputCallbackMap[axisName] = inputStruct;
            }
            else
            {
                inputCallbackMap.Add(axisName, inputStruct);
                bindNames.Add(axisName);
            }
        }
        /// <summary>
        /// 输入控制统一在这个组件来处理了
        /// </summary>
        void Update()
        {
            for (int i = 0; i < bindNames.Count; i++)
            {
                if (Input.GetAxis(bindNames[i]) != 0)
                {
                    KInputStruct inputStruct = inputCallbackMap[bindNames[i]];

                    if ((Time.time - inputStruct.lastInputTime) >= inputStruct.interval)
                    {
                        Debug.Log(Time.frameCount + "|" + this + "|" + bindNames[i] + "|" + Input.GetAxis(bindNames[i]) + "|inputStruct|" + inputStruct.ToString());
                        inputStruct.lastInputTime = Time.time;

                        inputStruct.cb(Input.GetAxis(bindNames[i]));
                    }
                }
            }
        }