顯示卡玩舊遊戲閃退、黑屏、畫面錯亂點分辦?DirectX 舊 API、32-bit、獨佔全螢幕、DPI 縮放同驅動相容排查指南
重點摘要
舊遊戲閃退黑屏畫面錯亂未必等於顯示卡損壞本文先分辦三種症狀再講解舊介面全螢幕縮放同驅動排查同埋點樣記錄低有效組合
先講結論:症狀本身已經係線索
顯示卡玩舊遊戲出問題,好多人第一反應係顯示卡老化或者損壞。呢個推論跳得太快。舊遊戲同新遊戲之間隔咗好多年,作業系統、顯示驅動、螢幕解像度、輸出模式全部都變晒。舊遊戲當年設計嗰陣,假設嘅環境同而家嘅環境已經唔同,於是好多問題其實係環境唔夾,而唔係硬件算力唔夠。算力夠,唔等於介面夾;新卡可以輕鬆應付舊遊戲嘅 3D 運算,但如果遊戲要求嘅舊介面、舊色彩模式或者舊顯示模式喺新系統入面已經改變,遊戲仍然會閃退、黑屏或者畫面錯亂。排查嘅正確起點,係先將症狀分清楚,再逐層收窄,而唔係一開始就換卡、換線或者重裝系統。以下內容會先分辦三種最常見症狀,再講 DirectX 舊介面、32-bit 環境、獨佔全螢幕、DPI 縮放同驅動相容五個層次,最後畀一個可以照住做嘅排查順序。每次只改一個設定,改完用同一個觸發條件再試一次,先至知道邊一個改變真正有效。
三種症狀點分辦
閃退、黑屏同畫面錯亂聽落好似,但背後嘅線索完全唔同。分辦嘅方法唔係睇感覺,而係睇事發之後系統處於乜嘢狀態。閃退係指遊戲程式突然結束,畫面返到桌面,桌面本身操作正常,滑鼠同鍵盤都冇問題。呢種情況較大機會同程式層有關,例如缺少舊版元件、遊戲唔接受某個解像度、兼容性設定唔夾,或者某個覆蓋程式喺遊戲啟動期間介入。黑屏係指畫面全黑,但系統未必已經死機。有時仍然聽到遊戲聲音,有時按鍵之後畫面會返嚟,有時過一陣自動返到桌面。呢種情況較大機會同顯示模式切換有關,例如遊戲要求一個螢幕或者驅動唔再接受嘅解像度同更新率組合,輸出切換失敗,畫面就停留喺黑屏。畫面錯亂係指遊戲有畫面,但顏色錯、貼圖錯位、介面變形、文字變朦、圓形變橢圓。呢種情況較大機會同色彩模式、渲染器選擇、比例縮放、DPI 縮放或者驅動強制設定有關。記錄症狀嗰陣,要寫低四樣嘢:邊隻遊戲、邊個模式、邊個解像度、事發前改過乜嘢。冇呢四樣資料,之後嘅排查只會變成估。
| 症狀 | 事發之後嘅狀態 | 較大機會嘅方向 | 第一樣要試嘅對照 |
|---|---|---|---|
| 閃退返桌面 | 桌面操作正常 | 缺少元件、兼容性、覆蓋程式衝突 | 視窗模式啟動一次 |
| 全黑畫面 | 可能有聲、可能自動返桌面 | 顯示模式切換失敗、獨佔全螢幕問題 | 降低解像度或者轉視窗模式 |
| 顏色錯亂 | 遊戲繼續運作但畫面唔啱 | 色彩模式、調色盤、渲染器 | 檢查色彩模式同渲染器選項 |
| 比例變形 | 畫面拉闊或者壓扁 | 比例縮放設定 | 改為維持比例縮放 |
| 介面變朦錯位 | 遊戲內介面同滑鼠位置對唔準 | DPI 縮放處理方式 | 逐個試 DPI 覆寫選項 |
| 只得一隻舊遊戲出事 | 其他新舊遊戲正常 | 該遊戲嘅舊介面或者設定 | 針對該遊戲改兼容性設定 |
| 新舊遊戲都有花屏 | 多隻遊戲都有貼圖損壞 | 優先懷疑硬件或者驅動層 | 乾淨重裝驅動再做交叉對照 |
DirectX 舊介面:版本數字唔等於全部
DirectX 唔係一個單一程式,而係一組畀遊戲同顯示卡溝通嘅介面。唔同年代嘅遊戲用唔同世代嘅介面。非常早期嘅遊戲可能用 DirectDraw 處理二維畫面;之後嘅遊戲用 Direct3D 早期版本;再後期嘅舊遊戲多數用 DirectX 9;更新嘅遊戲用 DirectX 10、11 或者 12。現代 Windows 同現代顯示卡對較新世代有向下相容安排,但舊世代嘅輔助元件未必齊全。最常見嘅例子,係遊戲提示缺少某個 DirectX 9 檔案。好多人見到呢個提示,會以為自己部機嘅 DirectX 版本太舊或者太新,於是不停搵所謂最新版本去裝。事實上,系統本身嘅 DirectX 核心版本同舊版輔助元件係兩回事。Microsoft 提供嘅 DirectX End-User Runtime,作用係補回舊版遊戲需要嘅輔助元件,而唔係改變系統核心版本。正確做法,係用官方 End-User Runtime 或者遊戲本身附帶嘅安裝包去補元件,唔好隨便喺網上下載單一檔案放去系統資料夾。單一檔案來源不明,可能版本唔啱,可能同系統其他元件衝突,亦可能帶嚟保安風險。遊戲平台上面嘅舊遊戲,有時已經內置修補版本,會自動處理呢類元件問題。如果喺遊戲平台買嘅版本本身已經有修補,仍然出事,排查方向就應該轉去兼容性設定同顯示模式,而唔係繼續補元件。另一個要分清楚嘅概念,係 32-bit 同 64-bit。32-bit 遊戲需要 32-bit 執行環境同相關檔案;64-bit 系統可以行 32-bit 程式,但唔會因為裝咗 64-bit 元件,就自動補齊 32-bit 元件。排查嗰陣,要確認遊戲本身係 32-bit 定 64-bit,再確認對應環境係咪齊全。只講系統 DirectX 版本數字,係唔夠分辦問題。
色彩模式同調色盤:點解舊遊戲顏色特別容易錯
舊遊戲嘅顏色問題,有一個新遊戲好少遇到嘅根源,就係色彩模式。早期遊戲用 8-bit 色彩,依靠調色盤去決定每種顏色嘅實際顯示。調色盤可以理解為一張對照表,遊戲話要顏色編號幾多,系統就按對照表顯示相應顏色。現代系統處理調色盤嘅方式同當年唔同,結果可以係顏色整體錯亂、出現彩虹色、畫面閃爍,或者某啲顏色特別鮮艷得唔自然。呢類症狀唔代表顯示卡嘅色彩輸出損壞,而係舊調色盤機制同新系統處理方式唔夾。另一種常見情況係 16-bit 色彩。部分舊遊戲只支援 16-bit 色彩,喺 32-bit 桌面之下行,畫面可能出現色帶,即係漸變顏色變成一級級分界,或者抖動紋理特別明顯。反過來,強制遊戲用 32-bit 模式亦未必解決問題,因為遊戲本身只識 16-bit,強制改變只會令遊戲用一個佢唔識處理嘅模式去渲染。兼容性設定入面嘅降低色彩模式選項,就係針對呢類情況。選項包括以 256 色或者 16-bit 色彩去行程式,作用係令系統用返接近舊遊戲預期嘅色彩環境去行遊戲。試呢個選項嗰陣,要逐個模式試,試完記低邊個模式令顏色正常,邊個模式令問題更差。渲染器選擇亦會影響顏色同貼圖。部分舊遊戲提供多個渲染器選項,例如 Direct3D、OpenGL 或者舊式 Glide 類渲染。唔同渲染器對色彩深度、貼圖處理同縮放嘅做法唔同,換渲染器有時可以解決顏色錯亂或者貼圖抖動,但亦可能帶來另一種問題。換渲染器之前,最好先備份遊戲設定檔,咁樣試壞咗都可以還原。最後要提醒一點:螢幕本身嘅色彩設定,例如螢幕嘅色彩模式、對比設定,唔會令舊遊戲單獨出現調色盤錯亂。如果只有一隻舊遊戲顏色錯,其他程式顏色正常,排查方向應該留喺遊戲同系統兼容層,而唔係螢幕硬件。
獨佔全螢幕:舊遊戲最容易跌低嘅地方
獨佔全螢幕係舊遊戲年代嘅標準做法。遊戲啟動嗰陣,會直接取得顯示輸出嘅控制權,並且切換成遊戲要求嘅解像度同更新率。遊戲結束嗰陣,再將顯示模式還原返桌面設定。呢個機制喺當年好合理,因為當年螢幕解像度選擇少,遊戲要求嘅低解像度通常都受支援。但喺而家嘅環境,問題就出現。舊遊戲可能要求 640x480、800x600 或者 1024x768 等低解像度,而現代螢幕、顯示卡驅動或者 Windows 可能唔再接受呢個模式,或者接受之後切換過程出現問題。結果就係黑屏、閃退,或者遊戲結束之後桌面解像度返唔到原來設定。視窗模式同無邊框視窗模式唔需要獨佔輸出,系統唔使切換整個顯示模式,所以穩定性通常較高。好多舊遊戲可以用鍵盤組合切換視窗,或者喺設定檔入面改視窗模式。呢個對照非常有診斷價值:同一隻遊戲,視窗模式正常、獨佔全螢幕先出事,問題大機會喺顯示模式切換,而唔係顯示卡算力不足。反過來,如果視窗模式都出事,問題就可能喺元件、色彩模式或者驅動層,排查方向要轉。Windows 嘅全螢幕最佳化亦會改變全螢幕程式嘅呈現路徑。對新遊戲嚟講,呢個功能可能有幫助;對舊遊戲嚟講,有機會干擾原本嘅切換流程。兼容性設定入面嘅停用全螢幕最佳化選項,就係一個低風險對照變數,可以逐項試。覆蓋程式亦係獨佔全螢幕嘅常見干擾源。遊戲平台、錄影程式、即時通訊程式、硬件監控程式嘅覆蓋介面,可能喺遊戲切換全螢幕嗰陣介入,令畫面黑屏或者程式結束。排查嗰陣,應該逐一停用覆蓋程式,停一個試一次,唔好一次過停晒又一次過開返,否則永遠唔知邊個先係原因。雙螢幕環境亦會放大切換問題。舊遊戲切換解像度嗰陣,第二個螢幕可能閃爍、視窗位置重置,或者主螢幕返唔到原來解像度。測試嗰陣,先用單一螢幕做對照,可以收窄範圍,確認問題係咪同雙螢幕切換有關。
DPI 縮放同比例:三層要分開睇
舊遊戲喺高解像度螢幕上面出問題,好多時唔係 3D 渲染問題,而係縮放問題。縮放問題要分三層睇,混埋一齊講就會愈排查愈亂。第一層係遊戲內解像度同比例。舊遊戲多數只支援 4:3 比例嘅解像度,喺 16:9 闊螢幕上面拉闊,人物會變肥變矮,圓形會變橢圓。呢個係比例問題,唔係顯示卡畫錯圖。解決方向係用維持比例縮放,接受畫面左右留黑邊,換取正確比例;或者喺遊戲設定入面揀一個闊螢幕解像度,如果遊戲本身有提供。第二層係縮放方式由邊個負責。顯示卡控制面板同螢幕本身都可以設定縮放,兩邊設定可能互相覆蓋。顯示卡控制面板常見選項包括維持比例、拉滿全螢幕、置中顯示。維持比例會留黑邊但唔變形;拉滿全螢幕會填滿畫面但變形;置中顯示會令低解像度畫面縮成細格,畫面中間細細格,四邊都係黑邊。排查嗰陣,要逐邊確認邊一個設定先生效,唔好假設改咗顯示卡設定就一定生效,因為螢幕本身嘅縮放設定可能覆蓋咗顯示卡設定。第三層係 Windows DPI 縮放。高解像度螢幕常用較高縮放比例,舊程式如果唔識處理每螢幕 DPI,介面可能變朦、變細、錯位,或者遊戲視窗同滑鼠位置對唔準。兼容性設定入面嘅變更高效能 DPI 設定,提供覆寫選項,包括由應用程式、系統、系統增強三種方式。由應用程式負責,即係畀舊程式自己處理縮放;由系統負責,即係由 Windows 將程式放大;系統增強就係 Windows 用較精細嘅方式放大,對於文字介面可能較清晰。呢三種方式效果唔同,要逐個試。重要嘅係,DPI 覆寫主要影響介面同視窗縮放,唔會改變遊戲內 3D 渲染解像度。遊戲內畫面變朦同介面變朦,可能是兩種唔同原因,唔好用同一個方法去處理。仲有一個誤區值得講清楚:換一條顯示線或者換一個端口,唔會解決比例同 DPI 問題。線材同端口主要影響訊號頻寬同更新率,比例同 DPI 屬於設定層,兩類問題嘅症狀唔同,唔好交叉歸因,否則會買錯嘢又解決唔到問題。
驅動相容:最新唔等於最啱舊遊戲
驅動問題可以分三種:驅動檔案損壞或者殘留、驅動版本同舊遊戲唔夾、驅動設定同遊戲衝突。排查嘅原則同其他層次一樣,每次只改一個變數。乾淨重裝係常用對照手段,做法係先用官方移除工具喺安全模式清除舊驅動,再由顯示卡晶片廠方官方網站下載安裝,並且選擇乾淨安裝。重點係清除殘留,唔係反覆喺舊驅動上面覆蓋安裝。覆蓋安裝可能保留舊設定同舊檔案,令問題持續存在,仲會令人誤以為已經試過重裝驅動。版本對照要用時間點做準則。如果問題喺某次驅動更新之後先出現,可以試回退到之前穩定嘅版本做對照;如果問題一直存在,可以試更新到最新穩定版。最新唔等於最適合舊遊戲,舊版亦唔等於最穩定,重點係邊個版本喺你部機上面同該隻遊戲最夾。顯示卡控制面板入面嘅全域設定亦可能影響舊遊戲,例如強制反鋸齒、強制垂直同步、強制縮放、強制色彩設定。呢啲全域設定會覆蓋遊戲本身嘅設定,令舊遊戲用一個佢預期之外嘅方式去渲染。測試嗰陣,可以先將全域設定還原預設,再逐項加返,睇邊一項先觸發問題。現代功能例如硬件加速 GPU 排程、可變更新率、遊戲模式,對新遊戲可能有幫助,但對舊遊戲未必有正面作用,甚至可能改變呈現時序。排查嗰陣可以逐項停用做對照,但唔好將佢哋寫成萬能開關,亦唔好一次過停晒所有功能,否則搵唔到真正原因。仲有一點好重要:同時安裝多個顯示卡調校或者監控工具,可能互相干擾。測試期間,應該只保留一個必要工具,其餘先停用,排除工具衝突之後再逐一加返。
照住做嘅排查順序
排查順序應該由低風險、低成本、容易還原嘅步驟開始,逐步走向較高成本嘅對照。第一步係記錄症狀同觸發條件,寫低邊隻遊戲、邊個模式、邊個解像度、事發前改過乜嘢。第二步係試視窗模式或者無邊框視窗模式,確認問題係咪只喺獨佔全螢幕先出現。第三步係檢查遊戲本身嘅設定檔同渲染器選項,備份設定檔之後,試改解像度、色彩模式、渲染器。第四步係檢查缺少元件提示,如果遊戲提示缺少 DirectX 9 檔案,就用官方 End-User Runtime 或者遊戲附帶安裝包去補,唔好下載來歷不明嘅單一檔案。第五步係逐項試兼容性設定,包括兼容模式、停用全螢幕最佳化、降低色彩模式、DPI 覆寫,每次只改一項。第六步係停用覆蓋程式,逐一停用遊戲平台、錄影、即時通訊、監控程式嘅覆蓋介面。第七步係檢查顯示卡控制面板全域設定,先還原預設,再逐項加返。第八步係乾淨重裝驅動,並且做版本對照。第九步係用單一螢幕做對照,排除雙螢幕切換干擾。第十步先至考慮硬件對照,例如用另一部機試同一隻遊戲,或者檢查顯示卡接頭同散熱。呢個順序嘅好處,係前面九步都唔使買新零件,亦唔使拆機,大部分問題喺前面幾步已經可以收窄到一個好細嘅範圍。如果前面九步都試過,問題仍然存在,而且症狀已經擴散到新遊戲同舊遊戲,嗰陣先至值得懷疑驅動層以外嘅硬件問題。
常見誤區一次講清
第一個誤區,係以為新卡玩舊遊戲一定順。算力夠唔等於介面夾,舊介面缺失先係常見樽頸。第二個誤區,係以為 DirectX 版本數字愈大就包晒舊版。核心版本同舊版輔助元件係兩回事,缺失嘅輔助元件要另外補。第三個誤區,係黑屏就等於顯示卡損壞。黑屏可以係模式切換失敗,桌面返到嚟就證明輸出路徑仍然運作。第四個誤區,係拉滿全螢幕先叫正常。舊遊戲嘅原生比例係 4:3,拉滿闊螢幕必然變形,留黑邊先係正確比例。第五個誤區,係一次過改晒兼容性選項。一次改晒就唔知邊個選項有效,之後換遊戲又要重新估過。第六個誤區,係下載來歷不明嘅檔案補元件。應該用官方途徑或者遊戲附帶安裝包,唔好隨便放單一檔案去系統資料夾。第七個誤區,係以為換線材可以解決比例問題。線材影響訊號,比例屬於設定,兩者唔同層次。第八個誤區,係以為驅動最新就一定最好。對舊遊戲嚟講,穩定同夾先係準則,版本數字只係參考。第九個誤區,係忽略設定檔備份。改遊戲設定檔之前唔備份,試壞咗就連原本可以行嘅設定都搵唔返。第十個誤區,係將一隻遊戲嘅問題推廣成全部遊戲嘅問題。只喺一隻舊遊戲出事,排查範圍應該留喺該遊戲嘅兼容層;多隻遊戲都有同一症狀,先至值得擴大排查範圍。
預防同備份:下次換機都唔使重新估過
舊遊戲排查最花時間嘅部分,唔係改設定本身,而係每次都要重新估過邊個設定有效。預防嘅核心,就係將有效設定記錄低。每次搵到一個有效組合,就記低遊戲名稱、啟動模式、解像度、兼容性選項、DPI 覆寫方式、驅動版本、顯示卡控制面板有無特別設定。下次換機、重裝系統或者更新驅動之後,可以直接照記錄還原,而唔使由頭估過。遊戲設定檔亦應該備份。好多舊遊戲將設定存放喺遊戲資料夾或者文件資料夾入面嘅設定檔,備份呢啲檔案,等於備份咗有效組合。重裝遊戲之前,先備份設定檔;重裝之後,先還原設定檔再試,唔好一開始就用預設設定去試。驅動更新之前,亦應該記低目前穩定嘅驅動版本。如果更新之後舊遊戲出事,可以即刻知道邊個版本先係對照點。系統重大更新之前,同樣值得記低目前組合。舊遊戲玩家仲可以考慮將舊遊戲同新遊戲分開管理,例如舊遊戲用一個獨立嘅遊戲資料庫或者啟動設定記錄,唔好將所有遊戲嘅設定混埋一齊。最後一點,係關於遊戲來源。盡量用遊戲平台或者官方途徑提供嘅版本,因為呢啲版本有時已經內置修補,處理咗部分舊介面問題。自行修改遊戲檔案或者用非官方修補之前,要先了解修補嘅來源同作用,唔好盲目套用,否則可能引入新問題。
常見問題
問:舊遊戲一開就閃退,但新遊戲完全正常,係咪顯示卡有問題?
答:機會較低。只得一隻舊遊戲出事,新遊戲正常,較大機會係該遊戲嘅舊介面、元件缺失、兼容性設定或者顯示模式問題。應該先試視窗模式、檢查元件提示、逐項試兼容性設定,而唔係第一時間懷疑硬件。
問:遊戲提示缺少 DirectX 檔案,係咪代表要降級 DirectX?
答:唔係。系統核心版本同舊版輔助元件係兩回事。應該用官方 DirectX End-User Runtime 或者遊戲附帶安裝包去補舊版元件,唔好隨便下載單一檔案,亦唔好將系統核心版本降級。
問:黑屏之後桌面返到嚟,係咪代表顯示卡冇壞?
答:桌面返到嚟,證明顯示輸出路徑仍然運作,黑屏較大機會係顯示模式切換失敗。應該試降低解像度、轉視窗模式、停用全螢幕最佳化、停用覆蓋程式,再睇問題係咪只喺獨佔全螢幕先出現。
問:舊遊戲畫面拉闊變形,點先可以保持正確比例?
答:用維持比例縮放,接受左右留黑邊,換取正確比例。拉滿全螢幕會填滿畫面但一定變形。仲要確認顯示卡控制面板同螢幕本身嘅縮放設定邊一個先生效,兩邊設定可能互相覆蓋。
問:DPI 覆寫三種方式應該點揀?
答:逐個試。由應用程式負責係畀舊程式自己處理;由系統負責係由 Windows 放大;系統增強係 Windows 用較精細方式放大。邊種最清晰,要視乎該程式嘅介面寫法,冇一個選項適用於所有舊遊戲。試完要記低邊個有效。
問:驅動應該用最新版定舊版?
答:用時間點做準則。如果問題喺更新驅動之後先出現,試回退到之前穩定版本;如果問題一直存在,試更新到最新穩定版。穩定同夾先係準則,版本數字只係參考。重裝嗰陣要選乾淨安裝,清除殘留。
送修之前嘅最後檢查
如果你已經照上面順序試過,問題仍然存在,而且症狀已經擴散,可以做最後一次整理。將記錄整理成一份清單:邊幾隻遊戲出事、邊幾隻遊戲正常、視窗模式同全螢幕模式嘅結果有乜分別、改過邊啲兼容性設定、驅動版本同乾淨重裝結果、顯示卡控制面板全域設定係咪已經還原預設。帶住呢份清單去檢查,檢查人員可以更快收窄範圍,唔使由頭再估一次。HK GPU Fix 位於沙田石門達利廣場 1209 室,電話 2186 8010,WhatsApp 6558 6806。檢查收費按網站已公開三級收費 HK$400–2,800,實際收費以檢查結果同網站公開收費為準。送修之前,建議先備份遊戲設定檔同重要資料,並且記低目前嘅驅動版本同兼容性設定,方便對照。