??? 為了獲得一個模型的BLP文件名稱,需要查詢特定的DBC和WDB文件。例如,為了得到某個裝備的模型,需要從WDB文件中,根據其名稱獲得對應的ID和DisplayID,雖然這兩個ID在Item.dbc中也有對應關系,但Item.dbc卻中沒有名稱,所以WDB對于按照名稱查詢來說,是非常重要的;(插一句啊,也許有人會問,為啥不都放在item.dbc中呢,多簡單啊,如果真的這樣做,代價就是一來更大的數據文件,首先名稱是字符串類型,數據量比較大,加上又和“本地化”相關,就算只有本地語言,根據DBC的設計,也需要預留其他語言的位置;然后是對于想我這樣的修仙玩家來說,大多數item是見不到的,這樣本地數據就不用保持這個值了;還有就是可以更加靈活的更名,item改名了,不用patch。我是這樣理解的,基于我都能想到的這些優勢,想來BLZ也自然會將名稱放在wdb中了。)有了ID和DisplayID后,在ItemDisplayInfo.dbc中就可以獲得模型的M2和BLP了,理論上就可以Show了。
??? 目前網絡上多數的直接使用item.csv,來獲得名稱與ID和DisplayID對應關系,來最終Show模型,想來應該是一個人的WDB內容是不全的,需要補充,還有估計這樣就省去了對WDB的查詢了。
??? 對于wxDeMPQ來說,我是想自動獲得這個對應關系,(當然,我的WDB內容空空。。。)這樣就需要一個實現查詢DBC和WDB的功能,于是就有了DBQueryLibrary。

??? 當前剛實現了對DBC的查詢,基于wxDeMPQ的需求,即根據一個字段的內容,查詢另一個字段的內容要求,DBQueryLibrary僅僅是簡單的兩個字段對于關系查詢,而且是唯一查詢,就是說,如果匹配上了,就獲得結果,并退出。要是需要枚舉操作,或者其他方式的查詢,如一對多、Key查全表等,改改應該不難。這里是
源碼,有興趣的改去吧。。。其中實現了DBC的加載和讀取方式,需要DBCFields.xml文件來指定DBC字段意義。編譯的話,需要tinyxml和stormlib。