為什麼Windows 8和10里運行16位色程序會奇卡無比?

不能簡單的把16位色補充成32位色嗎?


你指的是紅色警戒2、尤里的復仇這些16位色遊戲么?

這個跟16位色沒關係,主要是VideoBackBuffer這個技術的兼容性問題,按下面說明操作一遍就好了。

右鍵紅警快捷方式 選擇98兼容模式(紅色警戒不支持多核cpu 因為這樣可以使計算機以單核模式運行)

打開紅色警戒根目錄 找到ra2.ini文件 打開找到 [Video],加入如下指令,

VideoBackBuffer=no

AllowHiResModes=yes

AllowVRAMSidebar=no

以上方法同樣適合尤里的復仇,尤里的配置文件是Ra2md.ini.

解釋:VideoBackBuffer=no (視頻回放緩衝區)老舊的cpu因為頻率低不能及時處理更新視頻信號所以創建一個緩衝區來加速處理 現在的cpu速度快了 繼續使用會導致過多重複操作 使遊戲變卡 所以改為no

AllowHiResModes=yes (高解析度支持)寬屏液晶的童鞋們 可以在遊戲選項里找到更多解析度

AllowVRAMSidebar=no (始終顯存邊欄)不知道是幹什麼的 估計和性能有關。


win10跑16位增強色的程序不一定卡。譬如,我玩大航海4就不卡。所以這跟顏色位深沒有直接關聯。

但是現在電腦跑很老的程序經常卡。

原因是,當年很多程序的計時跟cpu ticks掛鉤,而非系統時間。現在的電腦每秒ticks比當年高很多倍(win10時貌似固定為某個值,跟硬體脫鉤,這方面的知識我了解不深,希望有了解的人解答)。

言歸正傳,現在運行這些老程序會出現什麼情況呢?就是計時變快,遊戲對話會變得很快,另外畫面刷新頻率變快,快得系統GUI計算不過來,所以就卡死了。


16位色不卡吧?是不是16色的程序?


應該是部分兼容,這樣的軟體大多不太支持了,還是用老電腦或者用虛擬機試試。


看了一下前面的回答和回復,發現題主問的好像關鍵是運行老遊戲……關於這個問題,某覺得有「深厚」經驗可以提供[捂臉]:

只要你的機器性能過得去(某的破機器是E3 1230 v3 + 16G + 460),弄個VMWare,裝上XP,即可完美解決所有問題。並且可以多開。

多嘴幾句強行裝一波:雖然某當時並未細究題主提出的這個問題,但是窗口化運行(這也是重點)《英雄無敵4》、《風色幻想1》(之前從未玩過,雖然VMWare解決了所有問題,玩到一半也棄坑了——因為居然忘記了網上弄下來的XP鏡像的開機密碼[捂臉])、《北方密使》等遊戲時發現卡得懷疑人生,就想起了傳說中的DosBox,接著想起了活在當下的VMWare,然後就仿如宿便逢瀉藥,萬紫千紅又一春了。


16位色是以兼容模式運行的,系統、顯卡驅動等都只做了最基本的兼容,很多16位色API估計都是模擬的。


推薦閱讀:

基於 GDI 對象的 Windows 內核漏洞利?
秩態網研製白皮書6:秩態網(OSN)符號
win7引用不可用的位置怎麼辦
國內艦載1坑4彈垂髮系統
深入理解計算機系統-垃圾回收簡介

TAG:MicrosoftWindows | 操作系統 | Windows7 | Windows8 | Windows10 |