亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

[Unity3D]多個攝像機進行場景的切換

發布時間:2020-03-02 04:15:52 來源:網絡 閱讀:306 作者:蓬萊仙羽 欄目:游戲開發
攝像機比作人的眼睛最適合不過了。比如:極品飛車里面可變換視覺角度,可以從多個角度觀察汽車。

切換攝像機:一個鍵控制一個攝像機
這里是有多少臺攝像機就要設置多少個建,有些場景可能有十多個視角,比如NBA2K游戲里面就有多達12個視角以上,下面這種方法就不適用了,
[csharp] view plaincopy
  1. using UnityEngine;  
  2. using System.Collections;  
  3.   
  4. public class ActiveCamera : MonoBehaviour {  
  5.   
  6.     public GameObject camFirst;  
  7.     public GameObject camThree;  
  8.     public GameObject camSky;  
  9.   
  10.     public float changeInterval = 1.0f;  
  11.   
  12.     public string showStr = "";  
  13.   
  14.     void Start () {  
  15.         FindCamera();  
  16.     }  
  17.   
  18.     //找到攝像機對象  
  19.     void FindCamera()  
  20.     {  
  21.         camFirst = GameObject.Find("Main Camera");//第一人稱視角  
  22.         camThree = GameObject.Find("CameraThree");//第三人稱視角  
  23.         camSky = GameObject.Find("CameraSky");//空中俯瞰視角  
  24.   
  25.         camFirst.active = true;  
  26.         camThree.active = false;  
  27.         camSky.active = false;  
  28.           
  29.     }  
  30.     void Update () {  
  31.       
  32.     }  
  33.   
  34.     void OnGUI()  
  35.     {  
  36.         ChangeAngle1();  
  37.     }  
  38.     void ChangeAngle1()  
  39.     {  
  40.         if (Input.GetKey(KeyCode.Alpha1))  
  41.         {  
  42.             SetFalse();  
  43.             camFirst.active = true;  
  44.             showStr = "切換至第三人稱視角";  
  45.         }  
  46.        else if (Input.GetKey(KeyCode.Alpha2))  
  47.         {  
  48.             SetFalse();  
  49.             camSky.active = true;  
  50.             showStr = "切換至空中視角";  
  51.         }  
  52.         else if (Input.GetKey(KeyCode.Alpha3))  
  53.         {  
  54.             SetFalse();  
  55.             camThree.active = true;  
  56.             showStr = "切換至第一人稱視角";  
  57.         }  
  58.         Debug.Log(showStr);  
  59.        // GUILayout.Button(showStr);  
  60.     }  
  61.       
  62.     void SetFalse()  
  63.     {  
  64.         camFirst.active = false;  
  65.         camThree.active = false;  
  66.         camSky.active = false;  
  67.     }  
  68.   
  69.   
  70.       
  71. }  


切換攝像機:一個鍵控制N個攝像機
下面嘗試的代碼不起效果,有待解決

[csharp] view plaincopy
  1. void ChangeAngle2()  
  2.    {  
  3.   
  4.        if (Input.GetKey(KeyCode.Z))  
  5.        {  
  6.   
  7.   
  8.            if (camFirst.active)  
  9.            {  
  10.                camFirst.active = false;  
  11.                camThree.active = false;  
  12.                camSky.active = true;  
  13.                showStr = "切換至第三人稱視角";  
  14.   
  15.            }  
  16.   
  17.            if (camThree.active)  
  18.            {  
  19.                camFirst.active = false;  
  20.                camThree.active = false;  
  21.                camSky.active = true;  
  22.                showStr = "切換至空中視角";  
  23.   
  24.            }  
  25.   
  26.            if (camSky.active)  
  27.            {  
  28.                camFirst.active = true;  
  29.                camThree.active = false;  
  30.                camSky.active = false;  
  31.                showStr = "切換至第一人稱視角";  
  32.   
  33.            }  
  34.        }  
  35.        Debug.Log(showStr);  
  36.        //GUILayout.Button(showStr);  
  37.    }  

關于Unity3D,我們有個專門技術討論的大群,可以進行技術交流和咨詢,群號:858550 歡迎進行技術討論,里面有不少大牛
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

苏尼特右旗| 三穗县| 建水县| 嘉兴市| 桃源县| 郧西县| 杂多县| 南开区| 苍山县| 三河市| 丰都县| 永州市| 海口市| 岱山县| 昆明市| 山东省| 洪洞县| 湖南省| 耒阳市| 洛阳市| 榆中县| 吉木萨尔县| 府谷县| 阿鲁科尔沁旗| 大荔县| 瑞安市| 黄石市| 筠连县| 滦南县| 泰来县| 南京市| 金华市| 黄骅市| 金昌市| 乾安县| 新巴尔虎左旗| 台山市| 衡东县| 平安县| 昭通市| 含山县|