才有空分析Creature的DBC關(guān)系。唉,公司動(dòng)蕩,人心惶惶,但事情還是要做的,這個(gè)叫啥呢?嗯,職業(yè)道德,就算知道明天就被fire了,也要打開電腦,打開VC,分析winex11.drv;實(shí)際滿心疑慮,哪有心思一行一行看代碼啊,一天就添加了兩個(gè)注釋。。。
扯遠(yuǎn)了,回來。CreatureModelData.dbc中,有用的是ModelID和Model數(shù)據(jù),CreatureDisplayInfo.dbc中是DisplayID,ModelID和Texture,而CretureCache.wdb中有的是CreatureID,Name和DisplayID。這樣就可以看出來通過WDB中的CreatureID,查詢CreatureDisplayInfo.dbc,獲得對(duì)應(yīng)的ModelID和Texture,在通過CreatureDisplayInfo.dbc中的ModelID查詢CretureModelData.dbc可以得到對(duì)應(yīng)的Model,即M2;這樣,組合M2和Texture就可以的所需要的模型數(shù)據(jù)了。
從上述關(guān)系看,應(yīng)該是WDB作為入口,獲得對(duì)應(yīng)的Texture和M2,再建模;而wxDeMPQ現(xiàn)在的模式是通過M2,查詢Texture,這樣明顯不對(duì),也不符合常理和現(xiàn)實(shí),因?yàn)橐粋€(gè)M2可能會(huì)被多個(gè)Creature使用到,簡(jiǎn)單點(diǎn),比如熊吧,灰谷的黑熊和東泉的白熊就是一樣的M2,知識(shí)兩者的MTexture不同而已。這個(gè)問題導(dǎo)致wxDeMPQ現(xiàn)有的輸出模式不對(duì)了。
也許應(yīng)該將WDB作為起點(diǎn),這就要修改現(xiàn)有的wxDeMPQ了,工作量就大了,最主要的是--我的WDB很小,唉。。。
下面是“盧安荒野姐妹
”的模型,實(shí)際和石爪山脈的那個(gè)樹妖是一個(gè)模型,不信,換一個(gè)Texture就不一樣了。


.x在
這里,包含了多個(gè)Texture。