我的dx11 64位折腾记
说到这个dx11 64位,我最近还真就折腾了一回。也不是啥大事儿,就是玩个老游戏,感觉帧数有点不太给力,想着能不能再压榨一下我这台老伙计的性能。
起因:老树也想开新花
我这台电脑,配置也就那样,说新不新,说旧也不算太旧。但偏偏我还就喜欢玩点画面还行的游戏。最近不是捣鼓一个有些年头的游戏嘛它默认好像是跑在dx9还是啥玩意儿下面,而且我瞅着任务管理器,它还是个32位的进程。我就寻思,这玩意儿肯定有潜力可挖!现在系统都是64位的,显卡驱动也都对dx11支持得挺为啥不让它跑在dx11 64位模式下?理论上讲,dx11对多核心CPU的利用率比dx9强多了,64位也能用上更大的内存,怎么着也得有点提升。
过程:摸着石头过河
我先是去游戏设置里头找。翻了个底朝天,愣是没瞅见直接切换DX版本或者选择64位启动的选项。有些新游戏倒是直接就有,但这老家伙不行。
没办法,只能上网扒拉资料。你别说,还真给我找到点门道。主要路子有这么几条:
- 找游戏的启动器或者配置文件:有些游戏会在安装目录里放一个单独的64位启动程序,或者配置文件里有参数可以改。我先是把游戏目录翻了个遍,挨个瞅那些exe文件,看看有没有带“64”字样的。还真没有!然后我就开始找那些ini、cfg或者xml结尾的配置文件,用记事本打开,搜关键词,比如“DirectX”、“DX”、“Renderer”之类的。试着把一些可能是DX版本的数字从9改成11,或者把一些看起来像开关的参数从0改成1。
- 尝试添加启动参数:这个法子在很多Steam游戏或者其他平台游戏上都挺常见的。就是在游戏快捷方式的目标后面,或者在游戏平台的启动选项里,加上特定的命令。我搜罗了一堆可能的参数,比如“-dx11”、“-force-d3d11”、“-d3d11”、“-x64”等等。挨个试,每次改完都进游戏看看帧数软件显示的API是不是变了,或者看看任务管理器里进程是不是变成64位的了。
- 检查显卡驱动和系统组件:有时候也可能是系统层面的问题,比如DirectX组件没装全,或者显卡驱动太老了不支持。我就顺手把显卡驱动更新到了最新版,然后用那个DirectX修复工具扫了一遍,确保我系统里的DX环境是没问题的。
波折:失败是成功他妈
这过程可不是一帆风顺的。改配置文件,好几次改完了游戏直接打不开了,或者进去了画面不正常,水面变成绿油油的一片,吓我一跳,赶紧又改回来。加启动参数也是,试了十来个,大多数都没反应,游戏还是老样子。有一次加了个参数,游戏是启动了,但帧数反而比以前还低,卡得跟幻灯片似的,把我给郁闷坏了。
我就在那儿琢磨,是不是这游戏本身就锁死了32位和DX9,根本不支持?差点就想放弃了。
曙光:柳暗花明又一村
后来我把搜到的几个看似靠谱的启动参数组合了一下,又在一个不起眼的论坛角落里看到有人提到某个特定文件里有个隐藏设置。抱着死马当活马医的心态,我又试了一次。先是找到了那个论坛里说的隐藏配置文件,果然有个参数默认是关闭的,我给它打开了。然后,在启动项里加上了“-dx11”和一个强制64位启动的参数(具体是啥我现在都忘了,当时试太多了)。
双击游戏图标,心里默念“一定要成!”
结果:功夫不负有心人
你猜怎么着?游戏启动了!我赶紧切出来看任务管理器,进程后面那个“(32位)”的字样消失了!再打开帧数显示软件,上面赫然写着“D3D11”!
当时我那个激动,感觉跟捡了宝似的。赶紧进游戏跑了一圈,你别说,感觉是流畅了那么一点点。特别是在一些以前人多或者特效一多就容易卡顿的场景,现在明显感觉稳定了不少,帧数波动小了很多。虽然不是说一下子从30帧飙到60帧那种翻天覆地的变化,但体感上确实顺滑了,玩起来也舒心多了。
折腾的乐趣
这回折腾dx11 64位,虽然花了不少时间,走了不少弯路,但成功的时候,那种成就感还是挺足的。也不是说所有游戏这么一搞都能有翻天覆地的变化。有些老游戏可能本身优化就这样了,或者它根本就没有dx11的路径,或者硬件瓶颈在那儿。但对于一些确实支持,只是默认没开启或者需要特定方式引导的游戏来说,动手折腾一下还是值得的。
如果你也遇到类似的情况,比如感觉某个游戏明明配置要求不高但就是跑不太顺,不妨也动手试试看能不能让它工作在dx11和64位模式下。主要就是要有耐心,多找找资料,多尝试。我这回也算是积累了点小经验,分享给大家,希望能有点用。