前言
Prefab (預置物)的使用,相當便利。
在遊戲裡面,想要瘋狂發射子彈,那麼我們就可以先把「子彈」做成預置物。
在事件驅動後,舞台上便生成子彈(Instantiate),想要生成幾個子彈都可以。
如果子彈太多,也可以用Destroy指令,把子彈從舞台上消除。
一、製作
在舞台上製作遊戲物件,
可以在上面附著 add component (譬如:Rigitbody、Collider等)
二、使用
public GameObject myPrefab // 從外部接受myPrefab
Instantiate( myPrefab ); //把要生成在舞台的prefab,寫在這裡
Destroy (gameObject);
//把目前這個script所屬的gameObject消除
// gameObject的g小寫,用來指稱目前所屬遊戲物件
三、解除連結
1. 點選要解除連結的遊戲物件
也可以在上面add script。
總的來說,在舞台上把某個遊戲物件製作好後,
只需要將整個遊戲物件從舞台拖曳到Asset裡面,就會自動生成prefab了。
上面這種在Asset裡面,顯示藍色cube圖示的遊戲物件,代表預置物。
代表在舞台上的這個遊戲物件與他所屬的預置物之間具有連結關係。
如果把Asset裡面的這個預置物刪除,那麼在舞台上實體化的這個遊戲物件,
就會失去連結,甚至消失無法使用。
二、使用
public GameObject myPrefab // 從外部接受myPrefab
// GameObject的G大寫,用來宣告遊戲物件
Instantiate( myPrefab ); //把要生成在舞台的prefab,寫在這裡
Destroy (gameObject);
//把目前這個script所屬的gameObject消除
// gameObject的g小寫,用來指稱目前所屬遊戲物件
三、解除連結
1. 點選要解除連結的遊戲物件
2. 點擊GameObject → Apply Changes To Prefab
1. 點擊Inspector裡面的,Revert 或者是 Apply
2. 如果點擊Revert,就是回復先前設定
如果點擊Apply,就是apply目前作的所有修改,並且回復成為prefab
這兩者意義有點不同,使用上要稍微注意。
沒有留言:
張貼留言