1. using UnityEngine;
  2.  
  3. public class MouseLook : MonoBehaviour {
  4.  
  5. public enum RotationAxes { MouseXAndY = , MouseX = , MouseY = } //定义一个枚举,移动xy,或者只是移动x,或者y
  6. public RotationAxes axes = RotationAxes.MouseXAndY; //声明一个枚举变量,方便在外面修改移动模式
  7. public float sensitivityX = 15f; //定义一个移动速度
  8. public float sensitivityY = 15f;
  9.  
  10. public float minimumY = -60f; //定义俯视最低值,建议这个值,要不然会转过头
  11. public float maximumY = 60f; //定义俯视最高值,建议这个值,要不然会转过头
  12.  
  13. float rotationY = 0f; //存储实际转动的Y值
  14.  
  15. void Start()
  16. {
  17.  
  18. }
  19. void Update ()
  20. {
  21. switch (axes) //判断用户是用那种旋转方式
  22. {
  23. case RotationAxes.MouseXAndY:
  24. float rotationX = transform.localEulerAngles.y + Input.GetAxis("Mouse X") * sensitivityX;
  25.  
  26. rotationY += Input.GetAxis("Mouse Y") * sensitivityY; //
  27. rotationY = Mathf.Clamp(rotationY, minimumY, maximumY);
  28.  
  29. transform.localEulerAngles = new Vector3(-rotationY, rotationX, );
  30. break;
  31. case RotationAxes.MouseX:
  32. transform.Rotate(, Input.GetAxis("Mouse X") * sensitivityX, );
  33. break;
  34. case RotationAxes.MouseY:
  35. rotationY += Input.GetAxis("Mouse Y") * sensitivityY;
  36. rotationY = Mathf.Clamp(rotationY, minimumY, maximumY);
  37.  
  38. transform.localEulerAngles = new Vector3(-rotationY, transform.localEulerAngles.y, );
  39. break;
  40. default:
  41. break;
  42. }
  43. }
  44. }

Unity的学习笔记(鼠标移动控制视角移动)的更多相关文章

  1. Unity Shader学习笔记-1

    本篇文章是对Unity Shader入门精要的学习笔记,插图大部分来自冯乐乐女神的github 如果有什么说的不正确的请批评指正 目录 渲染流水线 流程图 Shader作用 屏幕映射 三角形遍历 两大 ...

  2. 从0开始学习Unity的学习笔记(I 界面学习和简单模型拼装)

    先给一个大致今天学习的图,然后后面是细节 1.下载Unity :官网下载需要版本 2.Unity安装:一定不要有中文路径:一台电脑可以安装不同版本的Unity,但是要安装在不同的文件夹下: 3. 新建 ...

  3. unity 3D 学习笔记

    1.父对象的初始位置设,即刚开始的空对象的根节点位置应当设置成(0,0,0) 这样设置可以避免以后出现奇怪的坐标. GameObject实际上就是一些组件的容器. unity 使用公用变量原因是,在U ...

  4. 【Unity Shader学习笔记】Unity基础纹理-法线贴图

    1 高度纹理 使用一张纹理改变物体表面法线,为模型提供更多细节. 有两种主要方法: 1.高度映射:使用一张高度纹理(height map)来模拟表面位移(displacement).得到一个修改后的法 ...

  5. 【Unity Shader学习笔记】Unity基础纹理-单张纹理

    1 单张纹理 1.1 纹理 使用纹理映射(Texture Mapping)技术,我们把一张图片逐纹素(Texel)地控制模型的颜色. 美术人员建模时,会在建模软件中利用纹理展开技术把纹理映射坐标(Te ...

  6. 【Unity Shader学习笔记】Unity光照基础-高光反射

    1.原理 1.1.Phong模型 计算高光反射需要表面法线.视角方向.光源方向.反射方向等. 在这四个矢量中,我们实际上只需要知道其中3个矢量即可,而第4个矢量(反射方向r)可以通过其他信息计算得到: ...

  7. 0039 Java学习笔记-多线程-线程控制、线程组

    join线程 假如A线程要B线程去完成一项任务,在B线程完成返回之前,不进行下一步执行,那么就可以调用B线程的join()方法 join()方法的重载: join():等待不限时间 join(long ...

  8. AMQ学习笔记 - 19. 问题解决 - 控制Atomikos的日志输出

    概述 在使用Atomikos为ActiveMQ提供JTA支持时,Atomikos在控制台打印了繁琐的日志.这里介绍如何控制Atomikos日志输出的粒度. 解决方案 基于以下三个事实: Atomiko ...

  9. Linux C语言编程学习笔记 (1)进程控制入门

    想进行Linux系统开发已经很久了,一直没有付诸实践.今日终于开始学习Linux下的C语言编程,研究一天,终于大概弄明白了Linux系统进程管理的一些基本概念和编程方法,总结下来以方便大家学习和自己实 ...

随机推荐

  1. 第12组 Beta冲刺(2/5)

    Header 队名:To Be Done 组长博客 作业博客 团队项目进行情况 燃尽图(组内共享) 由于这两天在修严重Bug,故项目没有新的进展,燃尽图没有变化 展示Git当日代码/文档签入记录(组内 ...

  2. 打印出js对象里面的内容

    最近调试的时候遇到需要打印出js对象里面的内容,两种方式: 1.直接使用 JSON.stringify(obj) 方法把对象转成字符串,打印出来.但是因为维护的项目比较老,使用的还是ie11的ie5兼 ...

  3. vim配置无插件

    其实,vim插件会影响编辑器的启动速度,虽然有些插件影响不大,我依然觉得不够,其实通过简易的状态栏,可以显示必要的信息,能自定义颜色和背景甚至透明就足够了. 一.自定义状态栏其实以下内容可以写在一行上 ...

  4. iwms后台编辑器无法粘贴word格式的解决方法

    iwms后台编辑器用的是tiny_mce,默认会自动过滤word粘贴中的格式,以减小数据库的占用,但在word中辛苦做的字体和格式都不见了,可采用下方法关闭编辑器的自动清除格式功能. 编辑文件:\ti ...

  5. phpstudy apache 服务无法启动

    1.找到apache路径 3.打开cmd进入bin文件夹 4.输入 httpd.exe  看报的什么错误即可解决 我的这边是httpd.config 里面配置了个项目文件夹路径,这个文件夹被我删了,导 ...

  6. SQL Server 变量定义

    declare @id intdeclare @name char(10) --注意:char(10)为10位,要是位数小了会让数据出错set @id=1 set @name='sssss'selec ...

  7. Spring中查看加载配置文件中 加载类的个数及详情

    断点到: org.springframework.beans.factory.support.DefaultListableBeanFactory#getBeanDefinitionCount 显示该 ...

  8. 对象与json字符串转换类设计

    public static class JsonNewtonsoft { /// <summary> /// 把对象转换为JSON字符串 /// </summary> /// ...

  9. redis的相关原理

    一.AOF 二.RDB 三.哨兵

  10. Gson字符串编码,字符串转换成图片保存,二进制转换成图片保存

    import java.io.BufferedInputStream; import java.io.ByteArrayInputStream; import java.io.File; import ...