時(shí)間:2017-06-14 14:36:42 作者:琪琪 瀏覽量:169
筆者玩過不少基于DirectX開發(fā)的游戲,也遇到過不少亂七八糟的問題導(dǎo)致無法進(jìn)行游戲。鑒于許多人也因?yàn)楦鞣N問題而苦惱,特意寫下這篇教程,算是分享一下我的解決經(jīng)驗(yàn)。
常見問題:
一、程序啟動(dòng)時(shí)提示“缺少D3DX9_*.dll” 或者類似名字的Dll文件
這種情況往往是由于DirectX版本過低導(dǎo)致的,需要升級DirectX版本(詳細(xì)過程見Q&A)。
二、程序提示“創(chuàng)建Direct3D設(shè)備失敗”或類似問題
這是很常見的一個(gè)問題,網(wǎng)上給出的解決方案往往是重裝DirectX,但站在程序的角度,這種做法未見得可行。如果能進(jìn)入游戲,不出現(xiàn)<一>中的提示,一般說明DirectX版本正確,也就是說重裝DirectX或者更新不會有任何改善。當(dāng)然,也可能有例外的情況出現(xiàn),鑒于更新DirectX版本不會對電腦產(chǎn)生副作用,在遇到這種情況的時(shí)候也可以先去更新DirectX版本,如果情況沒有改善,那么就意味著需要升級顯卡驅(qū)動(dòng)(詳細(xì)過程見Q&A)。如果升級顯卡驅(qū)動(dòng)后仍然不行,說明你的硬件跟不上游戲的要求(如何知道我的電腦能否勝任某個(gè)游戲?詳細(xì)過程見Q&A),這就要去換顯卡了。不過,鑒于換顯卡是一件很麻煩的事情,具體過程本教程不闡述,有需要的讀者可以向商家咨詢。
三、玩老游戲時(shí)花屏
這種問題往往出現(xiàn)在高配置或者新配置的電腦上,這種問題往往是由于操作系統(tǒng)兼容性以及硬件導(dǎo)致的。以筆者為例,曾經(jīng)就遇到紅色警戒花屏的問題,但是在配置近乎一樣的其他電腦上紅色警戒照常運(yùn)行,唯一不同就是人家是Ati的卡,我的是Nvidia的卡;同樣的,在A卡的電腦上不能運(yùn)行的一些老游戲,我的n卡可以進(jìn)行的很流暢。這種情況一般就是硬件兼容性或者顯卡驅(qū)動(dòng)的兼容性導(dǎo)致的,遇到這樣的問題也只能去相關(guān)論壇發(fā)帖詢問,因?yàn)椴煌螒蚩赡軙胁煌鉀Q方案。升級顯卡驅(qū)動(dòng)也許會有些效果。
如果是由于操作系統(tǒng)兼容性導(dǎo)致的問題,可以通過屬性來兼容運(yùn)行(詳細(xì)過程見Q&A),但這樣做能可能產(chǎn)生一些副作用,也可能對問題起不到任何幫助。如果游戲?qū)嵲诓患嫒莓?dāng)前系統(tǒng),可以嘗試使用虛擬機(jī)。鑒于過程很麻煩,本教程不闡述。
四、游戲過程中花屏、黑屏,接著電腦死機(jī)
區(qū)別于<三>中的情況,這種問題往往出現(xiàn)在游戲中途,而且隨機(jī)產(chǎn)生。筆者曾在03年的某品牌老電腦上運(yùn)行《半條命2》,游戲過程中出現(xiàn)花屏,同時(shí)該電腦運(yùn)行CF這樣低配置的游戲時(shí)會隨機(jī)黑屏。這種情況往往是由硬件本身導(dǎo)致的,可以歸結(jié)為硬件問題。當(dāng)然不能排除顯卡驅(qū)動(dòng)在中間作祟。所以升級顯卡驅(qū)動(dòng)、更新DirectX版本仍然是一個(gè)解決方案。如果仍然無效,那就可以確認(rèn)為硬件問題。
硬件方面,導(dǎo)致花屏和黑屏的可能原因很多,比如顯卡供電不足、顯卡溫度過高、內(nèi)存條損壞、主板損壞等等。如果問題比較嚴(yán)重,可以去找人修一下,或者干脆更換顯卡(前提是確認(rèn)顯卡問題)。
五、DirectX版本不對
升級DirectX版本。但是對于某些游戲可能是由于游戲本身導(dǎo)致的錯(cuò)誤,這樣的話只能去換個(gè)游戲版本試試。
Q&A:
Q1:怎么卸載DirectX?
A1:這種問題往往是小白提出來的,請注意,DirectX不是軟件,這個(gè)叫做API(應(yīng)用程序接口)。專業(yè)一點(diǎn),DirectX是由一些COM組件組成的面向游戲開發(fā)人員的接口,可以免去程序員直接操作顯卡帶來的麻煩和危險(xiǎn)。DX作為系統(tǒng)組件存在,貿(mào)然刪除只會導(dǎo)致一些程序無法運(yùn)行甚至帶來無法再安裝DirectX的后果。如果是出于系統(tǒng)瘦身的目的,請參考專業(yè)文章然后三思而行。
Q2:DirectX升級是否會覆蓋原版?
A2:一般而言,DirectX升級只會往系統(tǒng)中加入更新的版本(用搜索在“C:\Windows\System32\”下面尋找“D3DX*.dll”這樣的文件,往往會看到D3DX9_33\D3DX9_34這樣的文件,后面的33\34一般就是版本了)。文件往往是越更新越多的。至于會不會覆蓋原版,我們不必去關(guān)系,也無需關(guān)心。(按照修改日期,應(yīng)該不會覆蓋老版本)