Unity学习之第一人称视角旋转

欢迎大家来到我的博客http://unity.gopedu.com/home.php?mod=space&uid=3352&do=blog&view=me&from=space

第一人称视角随鼠标旋转

      要实现摄像机随鼠标的旋转而旋转,需要先知道欧拉角,也就是自身坐标旋转角度。

Transform.localEulerAngles 自身欧拉角

旋转作为欧拉角度,相对于父级的变换旋转角度。

//方向灵敏度 

   public float sensitivityX = 10F;  

   public float sensitivityY = 10F;  

  

   //上下最大视角(Y视角

   public float minimumY = -60F; 

   public float maximumY = 60F; 

  

   float rotationY = 0F;

   // Use this for initialization

   void Start () {

  

   }

  

   // Update is called once per frame

   void Update () 

   { 

      //根据鼠标移动的快慢(增量), 获得相机左右旋转的角度(处理X) 

     float rotationX = transform.localEulerAngles.y + Input.GetAxis("Mouse X") * sensitivityX; 

     

      //根据鼠标移动的快慢(增量), 获得相机上下旋转的角度(处理Y) 

      rotationY += Input.GetAxis("Mouse Y") * sensitivityY; 

      //角度限制. rotationY小于min,返回min. 大于max,返回max. 否则返回value  

      rotationY = Mathf.Clamp (rotationY, minimumY, maximumY); 

     

      //总体设置一下相机角度 

      transform.localEulerAngles = new Vector3(-rotationY, rotationX, 0);  

   } 

请继续关注我的博客

http://unity.gopedu.com/home.php?mod=space&uid=3352&do=blog&view=me&from=space

更多精彩尽在http://www.gopedu.com/

你可能感兴趣的:(学习日志,Unity培训,U3D培训,Unity学习)