win7玩老游戏花屏的问题真难解决啊= =
我哥喜欢玩老游戏。一个是帝国时代2,但是在win7下玩的时候总是会花屏,不管是以兼容模式运行还是256色运行还是低分辨率。。。
后来按照网上的办法关闭explorer进程然后再玩,一开始确实不花了,但玩到一半又花屏了。。。草地也就算了,那海洋真是花得惨不忍睹。。。
还有一个是星际争霸1,这个好一点,只有开始界面是花的,游戏界面倒不花。。。
难道想玩老游戏就只能装XP了么 本帖最后由 Sunyata 于 2014-2-9 12:03 编辑
帝国二steam上有HD复刻
星际1我记得有个什么loader的,名字忘了...
-----
放狗查了下应该是叫chaos launcher
少年下载帝国2HD吧
----发送自 Sony M35c,Android 4.1.2 Sunyata 发表于 2014-2-9 11:57
帝国二steam上有HD复刻
星际1我记得有个什么loader的,名字忘了...
-----
多谢~我去看看~ qool999 发表于 2014-2-9 12:02
少年下载帝国2HD吧
----发送自 Sony M35c,Android 4.1.2
为啥我搜帝国花屏补丁的时候他们说帝国时代2和帝国2HD是不一样的? 捧脸发呆 发表于 2014-2-9 12:42
为啥我搜帝国花屏补丁的时候他们说帝国时代2和帝国2HD是不一样的?
帝国2HD是去年才出的··· 下个sctools 用窗口模式就不会花屏 很好用 帝国时代HD版就不错啊,官方重制
----发送自 HUAWEI HUAWEI U9508,Android 4.2.2 不要装帝国2HD复刻版,那货自带的水面特效就是个坑货。去翔鹰论坛找被遗忘的帝国2.2,这个非官方资料片很良心,而且FPS能到60帧。
----发送自 HTC Evo 3D GSM,Android 4.3.1 来,给你们一个自制工具
可以用来解决这个问题……
把游戏主执行程序添加到这个列表里面就可以了。
不敢保证解决,我电脑上可以,不过其他用户中似乎有添加了还是花屏的报告
简单来说把win7的ero特效关了即可 星际1的话 win8玩就不花屏啊。。。 win板用虚拟机玩老游戏 你们一般给虚拟机划多大空间
板子本身空间就挺吃紧的 搜vos windows 8掉落卡顿的时候搜到这个文章,里面方法很多,估计能解决楼主问题
http://write-code.blogspot.com/2011/03/solving-old-games-graphics-problem-on.html
塞尔达公主 发表于 2014-2-10 02:01
win板用虚拟机玩老游戏 你们一般给虚拟机划多大空间
板子本身空间就挺吃紧的 ...
用平板玩RTS sorayuki 发表于 2014-2-10 00:17
来,给你们一个自制工具
可以用来解决这个问题……
把游戏主执行程序添加到这个列表里面就可以了。
谢谢~我让我哥试试去~ samta 发表于 2014-2-10 00:45
星际1的话 win8玩就不花屏啊。。。
那机器本来是预装win8的,但是没分区。。。
我哥找我帮他分区,结果被我把那什么给破坏了,电脑无限重启= =最后只好装了win7。。。
电脑苦手的悲哀 塞尔达公主 发表于 2014-2-10 02:01
win板用虚拟机玩老游戏 你们一般给虚拟机划多大空间
板子本身空间就挺吃紧的 ...
是笔记本啦~ real_zyf 发表于 2014-2-10 00:21
简单来说把win7的ero特效关了即可
这是啥 eureka9 发表于 2014-2-10 02:38
搜vos windows 8掉落卡顿的时候搜到这个文章,里面方法很多,估计能解决楼主问题
http://write-code.blogsp ...
无法加载。。。 捧脸发呆 发表于 2014-2-10 09:21
这是啥
简单来说进游戏之前把explorer.exe强行杀掉就行
(至少sc1可行 关掉glass特效貌似能解决
----发送自 LGE Nexus 4,Android 4.4.2 除了平板,虚拟机解决一切问题 real_zyf 发表于 2014-2-10 11:34
简单来说进游戏之前把explorer.exe强行杀掉就行
(至少sc1可行
= =试过了,玩到一半又花了。。。
兄台你不仔细看帖我很桑心啊喂 一看令兄就不经常玩,要么就是爱不够,可以从亲戚家或者tb几百块钱收个旧电脑啦,我现在还有一台IBM上装着98SE,专门配了机械鼠和非玄学的机械键盘,专门玩老游戏…… 朵拉斯 发表于 2014-2-10 12:03
关掉glass特效貌似能解决
----发送自 LGE Nexus 4,Android 4.4.2
肿么关? 宅男的爱 发表于 2014-2-10 12:14
除了平板,虚拟机解决一切问题
(⊙o⊙)…我是不太指望我哥捣鼓虚拟机了。。。 捧脸发呆 发表于 2014-2-10 12:25
= =试过了,玩到一半又花了。。。
兄台你不仔细看帖我很桑心啊喂
那就杀dwm.exe,或者把主题改成windows7 basic real_zyf 发表于 2014-2-10 12:31
那就杀dwm.exe,或者把主题改成windows7 basic
我去试试,多谢~ 桑纳法比驰 发表于 2014-2-10 12:28
一看令兄就不经常玩,要么就是爱不够,可以从亲戚家或者tb几百块钱收个旧电脑啦,我现在还有一台IBM上装着9 ...
佩服佩服~ win7 64位玩英雄无敌3显示不全怎么破? 捧脸发呆 发表于 2014-2-10 12:29
(⊙o⊙)…我是不太指望我哥捣鼓虚拟机了。。。
只要配置一遍,VMWare比QQ用起来还简单 san30000 发表于 2014-2-10 16:55
win7 64位玩英雄无敌3显示不全怎么破?
挠头。。。 宅男的爱 发表于 2014-2-10 16:57
只要配置一遍,VMWare比QQ用起来还简单
好吧,我去看看怎么弄= =
本帖最后由 sorayuki 于 2014-2-10 17:39 编辑
所以微软本来就有提供面向DirectDraw游戏的兼容性设置,
在注册表的HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility位置(32位系统自己去掉Wow6432Node
里面有一些预设的,自己仿造创建键值就可以了
星际争霸1、帝国时代1、帝国时代2,我用这种方式都能跑起来不花屏。
网上给出的解释是explorer之类的系统进程,会使用全局调色板,这种调色板的设置会覆盖游戏对调色板的设置,使得颜色不正常
我当时参考的文章:
http://blog.macuyiko.com/2009/07 ... d-grass-purple.html
摘抄重要内容
(9 – reliable) Thanks to this comment I found out that Windows 7 actually provides a compatibility hack build in to allow running old DirectDraw games in all their glorious colors. The HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\Compatibility\ registry entry (or HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DirectDraw\Compatibility\ for 64bit Windows) contains entries for some popular games, such as Age Of Empires and Starcraft.
Take a look at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DirectDraw\MostRecentApplication to find out the correct application ID and edit the registry entry manually accordingly.
Technical explanation
If you’re interested in a little background on why this problem is happening, read on.
When I first encountered this problem, I already knew a little about DirectX, the GDI and the Windows API. Basically, back in the day, DirectX (which handles a lot of the graphics and multimedia workload in games and other program) included a component called Directdraw, used for rendering 2D graphics.
PCs back then weren’t really powerful. Everything had to be as fast as possible, even color handling. So something which Directdraw did for you was maintaining a palette of 256 colors. Like a painter, programmers could fill this palette with 256 colors they would use: ten greens for grass, 6 blues for water, and so on. Some of these 256 colors are static (but then again, not always) and cannot be changed. If you’re interested in the deep and dirty details: this page does a good job explaining it.
Now this is the thing: if you’re a fullscreen game, you don’t want other programs screwing up the system palette, changing your beautiful chosen colors to ugly greens and reds. And this is what’s happening in Windows 7. If you read System Palette and Static Colors on MSDN, it states that “However, because changing the static colors can have an immediate and dramatic effect on all windows on the display, an application should not call SetSystemPaletteUse, unless it has a maximized window and the input focus.” Alas, this is not enforced by Windows, and thus explorer.exe (which comes from Microsoft mind you) and other programs will happily call SetSystemPaletteUse and mess the poor fullscreen DirectDraw game up.
I googled a bit around to see if I could find any clues. This message at Stackoverflow describes the same problem. This message is actually posted by the maintainers of Worms: Armageddon. No-one provided an answer though. I opened up Visual Studio (which was still installed) to quickly throw something together in VB.NET to intercept the WM_SYSCOLORCHANGE, WM_PALETTECHANGED, WM_PALETTEISCHANGING and WM_QUERYNEWPALETTE messages and look at where they’re coming from. Basically, three processes are fighting:
CHANGING from (0)CHANGED from Age of Empires II Expansion (135458)Device context: 16847861Process: 4508: age2_x1Got 256 palette size scr[...]CHANGED from GDI+ Window (917744)Device context: 184626156Process: 2452: explorerGot 256 palette size scrCHANGED from (65552)Device context: 1744905863Process: 540: csrssGot 256 palette size scr[...]
The game itself, explorer.exe, and csrss.exe.
但是你们不觉得每次要玩游戏都要结束explorer进程很难受吗,
我感觉很难受啊
加了这样的兼容性键值以后,explorer在这样的进程在前台运行的时候就会暂停设置调色板的行为,使得游戏画面不受影响。
因为手工修改比较麻烦,外加这些键值里除了exe文件名还有一个识别exe文件的识别子(后来证明是文件头里的timestamp)
所以我弄了个有图形界面的添加这样兼容性设置的工具(就是10楼传的那个附件)
另外就是vmware我之前也有尝试过,虚拟机装xp系统,结果是帝国时代2会卡,总之效率堪忧的感觉。 http://yun.baidu.com/share/link?shareid=2784494219&uk=1477206597&third=0
试试这个 grax 发表于 2014-2-10 18:06
http://yun.baidu.com/share/link?shareid=2784494219&uk=1477206597&third=0
试试这个
谢谢~ sorayuki 发表于 2014-2-10 17:32
所以微软本来就有提供面向DirectDraw游戏的兼容性设置,
在注册表的HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432No ...
似乎看懂了又似乎没看懂。。。
页:
[1]