2010年2月12日

Directdraw Init Failed:玩遊戲時的問題處理


 
最近心血來潮玩起了 Windows 95 年代的遊戲:魔法氣泡2


好奇是什麼遊戲的可以參考 wiki 上的介紹:魔法氣泡系列

以上並不是重點,重點是玩遊戲時發生了蠻奇怪的問題,
在舊的電腦是可以順利玩的 (畢竟這遊戲是 win 95年代的了,需求不高),
但在配備比較高的筆電上卻一直出現「Directdraw Init Failed」的訊息,
然後遊戲就無法啟動了 orz

一開始我針對 Directdraw 去找,並沒有發現有什麼奇特的狀況,
電腦的 DirectX 和顯卡的趨動都是最新版本的了。
後來找了一些文章說在「開始 - 執行 - dxdiag」執行 DirectX 診斷工具可以測試環境的狀況,
此時我發現了一個錯誤,在診斷工具的「顯示 - 測試 DirectDraw」時遇上了問題,
我的顯卡無法在 640 x 480 x 16位元色彩底下執行,
後來看了一下顯卡的設定,果然解析度設定最低是 800 x 600,
這時還蠻錯愕的 orz,想不到是因為設備太好而無法執行舊遊戲,囧。

知道了是顯卡問題後又繼續找看看有沒有解決方案,
此時看到這篇「NVS 140M显卡新驱动不支持640×480分辨率的解决方案」提到的問題與我完全一樣,
後來便照著他的解決方式去找 RivaTuner 來新增 640 x 480 的解析度,
我用的版本是 RivaTuner v2.24c,日後有新版的話步驟可能會變,但應都類似,
步驟是:執行RivaTuner.exe -> Main -> Driver Settings -> Customize,
有個按鈕的功能是 Custom display modes / refresh rates wizard ,
點了以後輸入新的寬和高(640、480),要用幾位元的色彩(16),還有螢幕更新頻率(60),
確定後按 add 重新開機後即可!

重開機後在解析度選項裡並不會看到新增的解析度,
但已可正確執行遊戲啦,再也不會看到「Directdraw Init Failed」的錯誤訊息了。
因為想玩遊戲而多學到一招,也算是意外的收穫吧!

P.S. 我和NVS 140M显卡新驱动不支持640×480分辨率的解决方案 一文的作者一樣,
顯卡都是 NVIDIA Quadro NVS 140M 不太確定是不是只有這一款才這樣,
無論如何,如果有高階顯卡遇上相同的問題,應該也可以用這篇的方法解決吧。

關鍵字:Directdraw Init Failed, dxdiag, DirectX, NVIDIA Quadro NVS 140M, 640 x 480
參考資料:
  1. NVS 140M显卡新驱动不支持640×480分辨率的解决方案
  2. RivaTuner v2.24c
  3. 魔法氣泡系列


更多精選推薦文章

0 意見 :