一、基于物体缩放
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;
}
}
}
网友评论