最小單位GameObject

GameObject中的成員變量
名字:print(this.gameObject.name);
是否激活:print(this.gameObject.activeSelf);
是否是靜態(tài):print(this.gameObject.isStatic);
層級(jí):print(this.gameObject.layer);
標(biāo)簽:print(this.gameObject.tag);
GameObject中的靜態(tài)方法
創(chuàng)建自帶幾何體:
?GameObject obj = GameObject.CreatePrimitive(PrimitiveType.Cube);
只要得到了一個(gè)GameObject對(duì)象 我就可以得到它身上掛在的任何腳本信息,通過obj.GetComponent來得。
通過對(duì)象名查找對(duì)象:GameObject obj2 = GameObject.Find("Name");
通過tag來查找對(duì)象:GameObject obj3 = GameObject.FindGameObjectWithTag("Name");
兩種找單個(gè)對(duì)象的共同點(diǎn):
無法找到失活的對(duì)象的,只能找到 激活的對(duì)象。
如果場(chǎng)景中存在多個(gè)滿足條件的對(duì)象,我們無法準(zhǔn)確確定找到的是誰。
得到某一個(gè)單個(gè)對(duì)象:
是public從外部面板拖 進(jìn)行關(guān)聯(lián)
通過API去找
查找多個(gè)對(duì)象:GameObject[] objs = GameObject.FindGameObjectsWithTag("Name");
實(shí)例化對(duì)象(克隆對(duì)象)的方法:
實(shí)例化(克隆)對(duì)象 它的作用 是根據(jù)一個(gè)GameObject對(duì)象 創(chuàng)建出一個(gè)和它一模一樣的對(duì)象
GameObject obj5 = GameObject.Instantiate(myObj);
刪除對(duì)象的方法:
GameObject.Destroy(myObj2);
第二個(gè)參數(shù) 代表延遲幾秒鐘刪除
GameObject.Destroy(obj5, 5);
立即把對(duì)象從內(nèi)存中移除:
GameObject.DestroyImmediate(myObj);
過場(chǎng)景不移除 :
DontDestroyOnLoad(this.gameObject);
GameObject中的成員方法:
創(chuàng)建空物體:GameObject obj6 = new GameObject();
GameObject obj8 = new GameObject("順便加腳本的空物體", typeof(Lesson2),typeof(Lesson1));
為對(duì)象添加腳本:
Le2?les2 = obj6.AddComponent<Le2>();
標(biāo)簽比較:
this.gameObject.CompareTag("Player");
設(shè)置激活失活:
obj6.SetActive(false);