[小巩u3d] u3d基础知识
生活随笔
收集整理的這篇文章主要介紹了
[小巩u3d] u3d基础知识
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.Unity3d中的碰撞器和觸發器的區別?
碰撞器是觸發器的載體,而觸發器只是碰撞器身上的一個屬性。
當Is Trigger=false時,碰撞器根據物理引擎引發碰撞,產生碰撞的效果,可以調用OnCollisionEnter/Say/Exit函數;
當Is Trigger=true時,碰撞器被物理引擎忽略,沒有碰撞效果,可以調用OnTriggerEnter/Stay/Exit函數。
如果既要檢測到物體的接觸又不想讓碰撞檢測影響物體移動或要檢測一個物體是否經過空間中的某個區域這時就可以用到觸發器。
2.物體發生碰撞的必要條件?
兩個物體都必須帶有碰撞器(Collider),其中一個物體還必須帶有Rigidbody物體,而且必須是運動的物體帶有Rigidbody腳本才能檢測到碰撞。3.CharacterController和RIgidbody的區別
Rigidbody具有完全真實物理的特性,Unity中物理系統最基本的一個組件,包含了常用的物理特性,而CharacterController可以說是受限的Rigidbody,具有一定的物理效果但不是完全真實的,它不會受力的作用,是Unity為了使開發者能方便的開發第一人稱視角的游戲而封裝的一個組件。4.獲取、增加、刪除組建的命令分別是什么?
獲取:GetComponent ?增加:AddComponent ?刪除:Destroy5.調試記錄到控制臺的命令是什么?
Debug.Log();或者print();6.Prefab的作用?如何在移動環境的設備下恰當地使用它?
Prefab是預設體,在實例化的時候用到,主要用于經常會用到的物體,屬性方便修改。 在游戲運行時實例化,Prefab相當于一個模板,對已經有的素材、腳本、參數做一個默認的配置,以便于以后的修改,同時Prefab打包的內容簡化了導出的操作,便于團隊的交流。7.導航網格尋路一般要經過哪些步驟實現對目標的查找?
一般經過四個步驟來實現: (1)選擇除了主角、目標以及攝像機、直線光以外的所有物體,在Inspector窗口的右上角勾選Static,稱為靜態物體,并設置為Navigation Static靜態類型。 (2)在主窗口中選擇[Window]→[Navigation],打開Navigation窗口。該窗口用于生成路徑尋找所需要的導航網格尋路,代理將根據該導航網格進行尋路計算。確保勾選了“Navigation Static”。點擊Bake進行烘培。 (3)選擇需要尋路的游戲對象,為它添加一個NavMeshAgent組件。 (4)編寫尋路代碼,新建一個腳本。 尋路代碼: [csharp]?view plaincopy8.解釋以下代碼的各個參數的含義:
[csharp]?view plaincopy用一個簡單的demo實現上面的GUI,實現代碼(并有注釋解釋了代碼的各個參數的含義):
?
[csharp]?view plaincopy?
9.組件的動態調用
cube1.AddComponent("script1");//把script1這個腳本添加到cube1這個組件上 Destory(cube1.GetComponent("scripts"));//銷毀cube1對象上附加的腳本組件實例 Destory(cube1.GetComponent<script1>()); 可以運用GetComponent<腳本名稱>().字段名稱,進行間的數據傳遞。10.射線的使用
射線是一個點向另外一個點發生的一條線,一旦與其他模型發生碰撞,它將停止發射。注意這條線是邏輯上的,界面上看不到。一般使用射線判斷是否發射至某個游戲對象上或者獲得鼠標點擊的游戲對象等。 射線是從攝像機發出去的。 關鍵代碼: [csharp]?view plaincopy11.協程的含義。
12.粒子系統的概念。
轉載于:https://www.cnblogs.com/gonghongmiao/p/7794314.html
總結
以上是生活随笔為你收集整理的[小巩u3d] u3d基础知识的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: warning C4819: 该文件包含
- 下一篇: 希尔排序增量研究