浮出水面一下XD
展示:
(拍謝擷取這麼憋扭,OBS不知道怎麼自由拉視窗擷取

)
度,Instantiate拼錯,不要懷疑。((懶得改,這樣也不會跟Unity的Instantiate搞混
基本原理是若物件沒有要用了,不是Destory他,而是SetActive(false)藏起來,要用的時候再激活,這樣能避免一直產生GameObject又Destory的垃圾。
之前看一些物件池教學,只對特定物件做物件池管理(例如子彈),所以想說做個簡單的、通用的腳本統一去管理。 原本想說是不是要用到interface,不過最後還是用Object最簡單。
使用方法:
先註冊要管理的物件:
CGManager.RegisterObject("myKey", Instantiate(my_prefab));
要用的時候,取得可用的物件:
GameObject _obj = CGManager.Instanciate("myKey");
不用物件時:
CGManager.Destory(gameObject); //單純是gameObject.SetActive(false)
不再要用時:
CGManager.Remove("myKey")