乙個簡單的資源池建立,需要有如下功能:
呼叫啟用
驗證容量選擇儲存或銷毀
重置position或初始化
首先是初始化資源池的結構,也就是搭建資源池容器
public enum effecttype
//存放某型別的遊戲物體list
dictionary> poollistdic = new dictionary>();
//三種遊戲物體
listuncoveredeffectlist = new list();
listsmokeeffectlist = new list();
listgoldeffectlist = new list();
//存放某型別的遊戲物體最多數量list
dictionarypoollistcapacitydic = new dictionary();
int uncoveredeffectlistcapacity;
int smokeeffectlistcapacity = 5;
int goldeffectlistcapacity = 20;
//存放某型別的遊戲物體
dictionaryeffectgodic = new dictionary();
//在awake裡賦值
private void awake()
啟用(取得資源池裡對應的遊戲物體)
public gameobject getinstance(effecttype type, transform t = null, bool worldposstays = false)
list.removeat(list.count - 1);//因為是同乙個列舉型別,所以取得這個列舉型別對應的遊戲物體
return tempgo;
}else
return instantiate(go);
}}
重置(此**段裡為重置粒子系統)
private void resetinstance(gameobject go)
foreach (transform t in go.transform)
}}
儲存
public void storeinstance(effecttype type,gameobject go)
else
}
指標初接觸
指標是強大的c語言工具 指標指向位址 1.定義指標 使用指標之前要定義指標,與int,char,float類似的定義方式,不過要在定義型別和指標名之間加乙個 號來表示定義的是指標,不帶 號會導致定義的為變數而非對應型號的指標。2.初始化指標 使用指標之前還要初始化指標,否則指標有可能會覆蓋掉資料 我...
三 sqlldr初接觸
只記錄一些學習時看到和自己用到的sqlldr 控制檔案內命令 定長字串處理 into table a col1 position 1 5 第1到第5,5個字元 col2 position 1,7 第6 5 1,表示上乙個結束的位置,1為偏移量 到第7,2個字元 字串處理命令 舉例 into tabl...
gdb除錯初接觸
之前面試的時候有遇到過乙個問題,當覆蓋率偏低的時候,對於測試用力無法覆蓋的部分,有沒有什麼辦法可以實現覆蓋,當時沒答上來,後來了解了可以通過gdb除錯的方法來實現 流程的控制。先來看一段 include includeint main void else return 0 這段 裡else裡的 是永...