国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

Unity3D實現(xiàn)鼠標控制視角轉動

2020-01-24 00:08:43
字體:
來源:轉載
供稿:網友

前面,學了物體的移動功能,現(xiàn)在來學一下C#實現(xiàn)鼠標控制攝像機(視角)移動。

代碼如下:

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

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; // 水平方向的 鏡頭轉向 public float m_minimumX = -360f; public float m_maximumX = 360f; // 垂直方向的 鏡頭轉向 (這里給個限度 最大仰角為45°) public float m_minimumY = -45f; public float m_maximumY = 45f; float m_rotationY = 0f; // Use this for initialization void Start () { // 防止 剛體影響 鏡頭旋轉 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); } }}

調用時,只需把該腳本綁定給物體即可。這里是綁定攝像機,以攝像機為第一人稱視角轉動。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 舟曲县| 文登市| 南充市| 临猗县| 辽阳县| 醴陵市| 盘锦市| 师宗县| 体育| 全南县| 安义县| 昆山市| 蚌埠市| 凌海市| 江都市| 大理市| 枣阳市| 平定县| 丘北县| 灵丘县| 侯马市| 陕西省| 于田县| 阿城市| 偃师市| 聂荣县| 永昌县| 泰和县| 句容市| 米脂县| 武隆县| 雷波县| 云阳县| 兴化市| 前郭尔| 永修县| 资中县| 梁河县| 庆城县| 莫力| 芦山县|