最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Unity3D實(shí)現(xiàn)鼠標(biāo)控制視角轉(zhuǎn)動

 更新時(shí)間:2019年02月26日 08:36:05   作者:JeterPong  
這篇文章主要為大家詳細(xì)介紹了Unity3D實(shí)現(xiàn)鼠標(biāo)控制視角轉(zhuǎn)動,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

前面,學(xué)了物體的移動功能,現(xiàn)在來學(xué)一下C#實(shí)現(xiàn)鼠標(biāo)控制攝像機(jī)(視角)移動。

代碼如下:

C#腳本(在Unity 5.5.1 下能運(yùn)行):

using System.Collections;
using System.Collections.Generic;
using UnityEngine;


public class MouseView : MonoBehaviour {

 public enum RotationAxes
 {
 MouseXAndY = 0,
 MouseX = 1,
 MouseY = 2
 }

 public RotationAxes m_axes = RotationAxes.MouseXAndY;
 public float m_sensitivityX = 10f;
 public float m_sensitivityY = 10f;

 // 水平方向的 鏡頭轉(zhuǎn)向
 public float m_minimumX = -360f;
 public float m_maximumX = 360f;
 // 垂直方向的 鏡頭轉(zhuǎn)向 (這里給個(gè)限度 最大仰角為45°)
 public float m_minimumY = -45f;
 public float m_maximumY = 45f;

 float m_rotationY = 0f;


 // Use this for initialization
 void Start () {
 // 防止 剛體影響 鏡頭旋轉(zhuǎn)
 if (GetComponent<Rigidbody>()) {
  GetComponent<Rigidbody> ().freezeRotation = true;
 }
 }

 // Update is called once per frame
 void Update () {
 if (m_axes == RotationAxes.MouseXAndY) {
  float m_rotationX = transform.localEulerAngles.y + Input.GetAxis ("Mouse X") * m_sensitivityX;
  m_rotationY += Input.GetAxis ("Mouse Y") * m_sensitivityY;
  m_rotationY = Mathf.Clamp (m_rotationY, m_minimumY, m_maximumY);

  transform.localEulerAngles = new Vector3 (-m_rotationY, m_rotationX, 0);
 } else if (m_axes == RotationAxes.MouseX) {
  transform.Rotate (0, Input.GetAxis ("Mouse X") * m_sensitivityX, 0);
 } else {
  m_rotationY += Input.GetAxis ("Mouse Y") * m_sensitivityY;
  m_rotationY = Mathf.Clamp (m_rotationY, m_minimumY, m_maximumY);

  transform.localEulerAngles = new Vector3 (-m_rotationY, transform.localEulerAngles.y, 0);
 }
 }
}

調(diào)用時(shí),只需把該腳本綁定給物體即可。這里是綁定攝像機(jī),以攝像機(jī)為第一人稱視角轉(zhuǎn)動。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

平湖市| 建平县| 托克逊县| 通州市| 金平| 德阳市| 福清市| 潮州市| 都安| 盈江县| 许昌市| 防城港市| 陵川县| 双柏县| 安徽省| 大宁县| 灵台县| 乾安县| 临沂市| 舟曲县| 卢龙县| 高唐县| 乌兰察布市| 隆子县| 北宁市| 玉林市| 巴楚县| 威远县| 宁乡县| 嘉黎县| 全椒县| 阜康市| 乌兰浩特市| 林西县| 丹江口市| 大城县| 宁陕县| 康平县| 汶上县| 玉龙| 偏关县|