美文网首页
Unity 鼠标滚轮缩放脚本

Unity 鼠标滚轮缩放脚本

作者: 114105lijia | 来源:发表于2022-07-26 20:49 被阅读0次
一、基于物体缩放
    public Transform obj;
    //缩放比例限制
    public float MinScale = 0.02f;
    public float MaxScale = 30f;
    //缩放比例
    private float scale = 1f;

    void Update()
    {
        if (Input.GetAxis("Mouse ScrollWheel") != 0)
        {
            float mouseWheelValue = Input.GetAxis("Mouse ScrollWheel");
            scale += mouseWheelValue;
            scale = Mathf.Clamp(scale, MinScale, MaxScale);

            obj.transform.localScale = new Vector3(scale, scale, scale);
        }

    }
二、基于Camera缩放
void Update()
    {
        //鼠标滚轮的效果
        //Camera.main.fieldOfView 摄像机的视野
        //Camera.main.orthographicSize 摄像机的正交投影
        //Zoom out
        //Camera.main【注意需要设置Camera的Tag为MainCamera】
        if (Input.GetAxis("Mouse ScrollWheel") < 0)
        {
            if (Camera.main.fieldOfView <= 1000)
            {
                Camera.main.fieldOfView += 2;
            }

        if (Camera.main.orthographicSize <= 20)
            {
                Camera.main.orthographicSize += 0.5F;
            }
        }
        //Zoom in
        if (Input.GetAxis("Mouse ScrollWheel") > 0)
        {
            if (Camera.main.fieldOfView > 2)
            {
                Camera.main.fieldOfView -= 2;
            }

            if (Camera.main.orthographicSize >= 1)
            {
                Camera.main.orthographicSize -= 0.5F;
            }
        }
    }

相关文章

网友评论

      本文标题:Unity 鼠标滚轮缩放脚本

      本文链接:https://www.haomeiwen.com/subject/jnfairtx.html