/// <summary>
    /// 人物移动
    /// </summary>
    public void SimpleMove()
    {
        float h = Input.GetAxis("Horizontal");
        float v = Input.GetAxis("Vertical");

        if (h != 0 || v != 0)
        {
            float va = mainCamTrans.gameObject.GetComponent <Camera>().fieldOfView;
            movedir = transform.TransformDirection(new Vector3(h, 0, v).normalized *moveSpeed *va *Time.deltaTime);
            characterTrans.GetComponent <CharacterController>().Move(movedir);

            //有重力的效果
            var velocity = GetComponent <CharacterController>().velocity;
            var currentMovementOffset = velocity * Time.deltaTime;
            var pushDownOffset        = Mathf.Max(GetComponent <CharacterController>().stepOffset, new Vector3(currentMovementOffset.x, 0, currentMovementOffset.z).magnitude);

            currentMovementOffset = (-1) * pushDownOffset * Vector3.up;

            GetComponent <CharacterController>().Move(currentMovementOffset);


            FirstViewDataEntity fvde = (FirstViewDataEntity)GameObject.FindObjectOfType <FirstViewControlDataModel>().DataEntity;
            fvde.playerPos = characterTrans.localPosition;
        }
    }
    void Awake()
    {
        instance = this;
        FirstViewDataEntity fvde = new FirstViewDataEntity();

        this.DataEntity = fvde;
        Watch(this);
    }
    private float camHeightMax = 2f;   //相机最高高度


    /// <summary>
    /// 相机上下移动
    /// </summary>
    public void CamUpDown()
    {
        if (Input.GetMouseButton(2))//
        {
            shangXia = shangXia + 0.5f * Input.GetAxis("Mouse Y");
            shangXia = Mathf.Clamp(shangXia, -5.3f, 5.3f);

            mainCamTrans.localPosition = new Vector3(mainCamTrans.localPosition.x, Mathf.Clamp(mainCamTrans.localPosition.y, camHeightMin, camHeightMax), mainCamTrans.localPosition.z);

            mainCamTrans.Translate(0, shangXia * 0.01f, 0, Space.World);


            FirstViewDataEntity fvde = ((FirstViewDataEntity)FirstViewControlDataModel.instance.DataEntity);
            fvde.cameraPos = mainCamTrans.localPosition;
        }
        else if (Input.GetMouseButtonUp(2))
        {
            shangXia = 0;
        }
    }
    /// <summary>
    /// 相机旋转
    /// </summary>
    public void RotateCamera()
    {
        if (Input.GetMouseButton(0))
        {
            float yRot = Input.GetAxis("Mouse X") * XSensitivity;
            float xRot = Input.GetAxis("Mouse Y") * YSensitivity;

            m_CharacterTargetRot *= Quaternion.Euler(0f, yRot, 0f);
            m_CameraTargetRot    *= Quaternion.Euler(-xRot, 0f, 0f);

            if (clampVerticalRotation)
            {
                m_CameraTargetRot = ClampRotationAroundXAxis(m_CameraTargetRot);
            }
            if (smooth)
            {
                characterTrans.localRotation = Quaternion.Slerp(characterTrans.localRotation, m_CharacterTargetRot,
                                                                smoothTime * Time.deltaTime);
                mainCamTrans.localRotation = Quaternion.Slerp(mainCamTrans.localRotation, m_CameraTargetRot,
                                                              smoothTime * Time.deltaTime);
            }
            else
            {
                characterTrans.localRotation = m_CharacterTargetRot;
                mainCamTrans.localRotation   = m_CameraTargetRot;
            }

            FirstViewDataEntity fvde = ((FirstViewDataEntity)FirstViewControlDataModel.instance.DataEntity);
            fvde.playerRot = characterTrans.localEulerAngles;
            fvde.cameraRot = mainCamTrans.localEulerAngles;
        }
        if (Input.GetMouseButtonUp(0))
        {
            if (smooth)
            {
                IniQuaternion();
            }
        }
    }