1. 程式人生 > >Unity獲取遊戲物件

Unity獲取遊戲物件

GameObject.Find()

通過場景裡面的名子或者一個路徑直接獲取遊戲物件。
GameObject root = GameObject.Find(“GameObject”);

我覺得如果遊戲物件沒再最上層,那麼最好使用路徑的方法,因為有可能你的遊戲物件會有重名的情況,路徑用“/”符號隔開即可。
GameObject root = GameObject.Find(“GameObject/Cube”);

GameObject.Find()使用起來很方便,但是它有個缺陷,就是如果你的這個GameObject天生acive = false的話。那麼你用GameObject.Find()是永遠也無法獲取它的物件的。如果物件都獲取不到,那麼物件身上指令碼啊 元件啊都是獲取不到的,變成了沒有意義的物件。而且不建議把GameObject.Find()這個方法放在update等迴圈呼叫的方法裡進行查詢判斷,每find一次就會擴充記憶體,程式會炸掉的。BOOM!!~~~