unity如何实现摄像机控制
发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,这篇文章给大家分享的是有关unity如何实现摄像机控制的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。unity中第一,三人称控制器上绑定的都有一个叫Mouse Look的脚
千家信息网最后更新 2025年01月21日unity如何实现摄像机控制
这篇文章给大家分享的是有关unity如何实现摄像机控制的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
unity中第一,三人称控制器上绑定的都有一个叫Mouse Look的脚本,我把它写下来了;
[AddComponentMenu("Camera-Control/Mouse Look")]public enum RotationAxes{MouseXAndY=0,Mouse1,MouseY=2}public RotationAxes axes=RotationAxes.MouseXAndY;public float SensitivityX=15F;public float SensitivityY=15F;public float minimumX=-360F;public float maxmumX=360F;public float minimumY=-60F;public float maxmumY=60F;float rotationY=0F;void start(){ if(Getcomponent()) { GetComponent ().freezeRotation=true; }}void update(){ if(axes==RotationAxes.MouseXAndY) { float rotationX=transform.localEulerAngles.y+Input.GetAxis("Mouse X")*SensitivityX; rotationY+=Input.GetAxis("MouseY")*SensitivityY; rotationY=Mathf.Clamp(rotationY,minimumY,maxmumY); transform.localEulerAngles=new Vector3(-rotationY,rotationX,0); } else if(axes==RotationAxes.MouseX) { transform.Rotate(0,Input.GetAxis("Mouse X")*SensitivityX,0); } else { rotationY+=Input.GetAxis("Mouse Y")*SensitivityY; rotationY=Mathf.Clamp(rotationY,minimumY,maxmumY); transform.localEulerAngles=new Vector3(-rotationY,transform.localEulerAngles.y,0); }}
主角面向鼠标点击的方向:
Vector3 m_pos=Input.mousePosition; //获取鼠标的屏幕坐标; Vector3 p_pos=Camera.main.WorldToScreenPoint(transform.position); //将主角的世界坐标转化为屏幕坐标,为的是获得他的z轴坐标; m_pos.z=p_pos.z; //将主角的屏幕z轴坐标赋值给鼠标; Vector3 wolrd; wolrd.x=Camera.main.ScreenToWorldPoint(m_pos).x; world.z=Camera.main.ScreenToWorldPoint(m_pos).z; world.y=transform.position.y //y轴坐标不变,主角才不会转进地底; transform.LookAt(world); //主角看向鼠标点击的位置;
滑动鼠标中建,调整视野的远近:
float fov=Camera.main.FieldOfView; //获得摄像机调整视野的值; fov+=Input.GetAxis("Mouse ScrollWheel")*sensitivity; //滑动中建,调整视野值得大小; fov=Mathf.Clamp(fov,minFov,maxFov); //限制视野值得大小为(minFov,maxFov); Camera.main.FieldOfView=fov; //再将调整好的值赋值给摄像机的视野;
感谢各位的阅读!关于"unity如何实现摄像机控制"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
坐标
主角
视野
鼠标
摄像机
摄像
调整
控制
屏幕
内容
大小
更多
篇文章
不错
实用
世界
人称
位置
地底
控制器
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
德风科技 工业互联网
武汉烽火通信设备软件开发
pgdd数据库
一个服务器 多个域名
老挝软件开发工作
数据库原理 视图
中国中铁网络安全宣传周知
西安月嫂平台软件开发哪家好
三维仿真平台用什么软件开发
新华三 通信软件开发面试
网络安全知识普及的绘画
网络安知网络安全知识大全
福苏州市委网络安全和信息化
宁夏浴火网络技术有限公司
新乡嘟嘟网络技术下的app
数据库数据显示到客户端
微耕门禁数据库文件有哪些
中国医疗科技企业互联网医院
网络工程(网络安全技术)
安卓软件开发一般用什么
幼儿园网络安全答题活动
手机虚拟服务器软件下载
软件开发商的岗位说明
务实网络安全基础
在工厂搞软件开发
西宁网络安全实战特训营要怎么学
阿里云服务器中root用户被删
大华流媒体服务器
fxpro数据库
大连软件开发公司哪家最好