unity如何实现摄像机控制
发表于:2025-02-19 作者:千家信息网编辑
千家信息网最后更新 2025年02月19日,这篇文章给大家分享的是有关unity如何实现摄像机控制的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。unity中第一,三人称控制器上绑定的都有一个叫Mouse Look的脚
千家信息网最后更新 2025年02月19日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安全错误
数据库的锁怎样保障安全
网络安全监督检查自查表
b s软件开发平台
达梦数据库备份和还原命令
网络安全评测与等级保护
医疗器械网络安全注册审查
网络安全手抄小报简单又好画
巨龙之吼服务器部落多吗
网络技术人员的称呼
珠海澳仕玛互联网科技有限公司
儿童网络安全课视频四
软件开发计算器
移动网络安全公益短信
国家信息网络安全宣传周
手机怎么给卡添加服务器
易语言查找数据库中某个数据
济南app软件开发公司
软件开发可行性分析实验
安徽数据库日志审计参数
华为网络安全日 每月
电商类的app软件开发
杭州云集网络技术招聘
优秀团员数据库
单位网络安全日常管理工作
不同项目可以共用一个服务器么
贵州网络安全宣传周答题
软件开发网络科技
网络安全正确使用方法
如何看数据库版本ora
sql管理数据库教学视频
瑞金网络安全教育