unity鼠标控制视角旋转和缩放
在unity中怎么用鼠标实现视角的旋转和滚轮缩放呢
废话不多说,直接上源码:
public class MouseCamera : MonoBehaviour
{
public Camera cam;
// Start is called before the first frame update
void Start()
{
//隐藏或者显示物体
//transform.gameObject.SetActive(true);
cam = GetComponent<Camera>();
}
// Update is called once per frame
void Update()
{
//如果鼠标右键按下
if (Input.GetMouseButton(1))
{
float speed = 2.5f;//旋转跟随速度
float OffsetX = Input.GetAxis("Mouse X");//获取鼠标x轴的偏移量
float OffsetY = Input.GetAxis("Mouse Y");//获取鼠标y轴的偏移量
cam.transform.Rotate(new Vector3(OffsetY, -OffsetX, 0) * speed, Space.World);//旋转物体
}
if (Input.GetAxis("Mouse ScrollWheel") < 0)
{
if (cam.fieldOfView <= 100)
cam.fieldOfView += 2;
if (cam.orthographicSize <= 20)
cam.orthographicSize += 0.5F;
}
//Zoom in
if (Input.GetAxis("Mouse ScrollWheel") > 0)
{
if (cam.fieldOfView > 2)
cam.fieldOfView -= 2;
if (cam.orthographicSize >= 1)
cam.orthographicSize -= 0.5F;
}
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话