PhysX惨遭破解!A+N杂交物理游戏实战
泡泡网显卡频道10月5日 一年前,我们曾做过这样一篇很有意思的评测“化干戈为玉帛!A+N混交物理加速大测试”,用A卡当主卡做图形渲染,N卡当物理加速卡,最终的效果和性能都十分令人满意。虽然PhysX物理引擎是NVIDIA的专利,但A卡用户也能使用,只要您不是非A卡不用的铁杆AFan。
遗憾的是,这种投机取巧的方法只在古老的XP系统下有效,Vista特殊的显示驱动模型不允许同时存在两种截然不同的显卡驱动。当NVIDIA发现有这样一部分BT的玩家之后,在新驱动当中做了限制,在驱动安装时如果检测到存在非NVIDIA显卡的话,PhysX驱动就会自动禁用。
有用户就此事质询NVIDIA,得到的客服回答是:“PhysX是一项开发软件标准,任何企业都可以开发支持该标准的软硬件产品。但只有在使用NVIDIA显卡进行图形渲染时,我们才会提供PhysX GPU加速支持。NVIDIA在PhysX上投入了大量的工程研发和维护工作。基于开发成本、质量保证以及商业上的种种原因,如果渲染工作没有使用NVIDIA GPU运行,NVIDIA将不会在NVIDIA显卡上提供PhysX加速支持。我们对于由此带来的不便深表歉意,并希望您能够理解。”
举个例子,N卡用户想要升级显卡时,如果手头的96GT可以随意搭配N卡或者A卡都能当物理加速卡使用的话,那么支持DX11的HD5850显然更诱人一些,谁还会去买连DX10.1都不支持的GTX285呢?这种情况显然是NVIDIA不愿见到的。
为让评测文章更具参考价值,同时也让广大网友能够看到自己最感兴趣的内容,泡泡网DIY评测室特意开设了“You Think.I do”板块,您可以将最感兴趣的内容、甚至任何想法发送到邮箱“Think@PCPOP.COM”,或加QQ群40891155共同探讨,我们会有针对性地挑选网友关注的热点进行评测,一旦您的建议被采纳,我们会为您送出精美礼物一份!
往日经典文章回顾:
转眼就到了Win7时代,改进的WDDM 1.1驱动模型能够支持多种毫不相干的显卡驱动共存,A卡和N卡和平共处不成问题。一位名叫“Liandri / THETA”的高手开发了一个破解补丁,可以在使用非N卡作为系统主显卡的时候开启N卡的物理加速,但是仅限Win7系统(WDDM 1.1),而且不能让单独一块AMD显卡支持PhysX(他并没有破解PhysX引擎,只是破解了NVIDIA的驱动验证)。
不得不说一句,Vista在多显卡和多显示器管理方面,就是个垃圾
Liandri / THETA在公布破解补丁时还大声疾呼:不要让私有封闭标准为你选择硬件!一旦它们灭亡,这些硬件就会成为废物。看得出来他对NVIDIA刻意限制PhysX引擎的使用十分不满,而且这个破解补丁的运行界面很有意思:
笔者得知此消息后第一时间实测验证,破解流程如下:
0. 下载破解补丁:Win7 32bit版,Win7 64bit版
1. 同时插上A卡和N卡,显示器连接在A卡上;
2. 正常安装N卡最新的带PhysX的Forceware驱动,安装完成后不要重启系统;
3. 点cake,安装破解补丁;
4. 重启系统。
其它注意事项:如果安装补丁的时候提示文件正在使用(file in use),可以尝试结束所有NVIDIA运行时进程(nv***.exe)和Windows资源管理器外壳(explorer.exe),或者进入安全模式。为确保破解成功,可以多次安装补丁,不过所需文件只会更新一次。破解重启后会在系统目录里发现一些临时文件*.tmp,可以放心删除。
重启系统之后,继续进行多显示器设置,否则PhysX还是不能开启——
5. 桌面上点右键——屏幕分辨率——检测——出现几个“未检测到其它显示器”——选中对应N卡的那个显示器——在下面的多显示器下拉菜单中选择“仍然尝试在以下对象上进行连接VGA”——点应用;
6. 选中新的显示器——在下面多显示器下拉菜单中选择“扩展这些显示”——点应用并保存更改。
通过上述步骤之后您的A卡(主卡)和N卡(从卡)就已经能够协同工作了,并处于多头输出状态,N卡上虽然没有连接显示器,但已经被强制扩展输出了,此时如果把鼠标移动到右侧屏幕之外,想要拉回来需要一定的距离,不过没关系,因为在游戏状态下是主屏幕独占的,鼠标不会移动到副显示器上,相信玩过双头显示的朋友会明白。
7. 桌面上点击右键,就会发现A卡和N卡的控制面板同时出现了,点击“NVIDIA控制面板”,可以正常进入,在PhysX界面选择“启用”并保存,大功告成了!
然后大家就可以找一些物理游戏来体验一下,看A卡做图形渲染,N卡做物理加速是否工作正常。
时值国庆长假期间,本次测试在笔者家里完成,所以手头资源有限,本想用高端A卡搭配中低端N卡进行测试,可惜手头就两块最优异的N卡——GTX295和GTX285,拿它们当物理加速卡确实有点大材小用了,但也没办法。
所以本次测试只用于验证A卡当3D图形卡、N卡当物理加速卡的可行性,不做性能对比测试,如有可能的话,稍后我们会做详细全面的评测。
● 测试平台:
PCPOP.COM评测室 | |
硬件系统配置 | |
Intel Core i7 975 (3.33GHz L3=8MB 四核八线程) | |
主 板 |
ASUS P6T Deluxe(X58) |
显 卡 |
景泰 HD5850 1GB (725/4000MHz) |
内 存 |
Apogee DDR3-1600 (9-9-9-24-1T) |
硬 盘 |
日立1TB |
电 源 |
Tt暗黑650p |
软件系统配置 | |
Windows 7 RTM 7600.16385 64Bit | |
DirectX |
Directx_aug2009_redist |
显示驱动 |
NVIDIA Forceware 191.03 Beta ATI Catalyst 9.10 Beta |
刚刚发布的HD5850将直接面对GTX285。
测试PhysX物理加速是否正常开启,最简单的方法就是跑3DMark Vantage,如果在CPU Test 2场景中看到比平常多很多的小飞机,最终CPU得分暴涨的话,那么就是N卡的PhysX GPU加速生效了。
首先是HD5850单卡,CPU得分为两万出头,i7 975开了超线程也就这水平。
开启PhysX之后,CPU得分接近五万,这都是GTX285和PhysX的功劳。大家可以注意一下CPU Test 2的子项得分,不开PhysX仅25.9 Step/s,开启PhysX后高达165.98 Steps/s,GTX285的物理加速性能是i7 975的多少倍大家可以估算一下。
3DMark Vantage还是很智能的,3D测试是主卡HD5850在渲染,而CPU测试部分检测到了N卡的存在,从卡GTX285参与了运算,期间没有出现任何渲染错误或者不正常的情况。
接下来在实际游戏中进行测试,使用最近比较热门的的《Batman:Arkham Asylum》(蝙蝠侠:阿卡姆疯人院)做测试,该游戏使用了大名鼎鼎的虚幻3引擎,支持DX10和PhysX,是物理游戏当中画面效果优秀的一款。
● 破解前HD5850运行蝙蝠侠时的性能:
如果只使用A卡,不破解PhysX,在游戏设置菜单中,想要开启PhysX的话,系统就会提示您不支持NVIDIA PhysX加速,开启PhysX会造成性能严重下降。
果然,在2560x1600 noAA PhysX High的模式下,HD5850最高只能跑出32帧,平均FPS仅17帧,遇到布料纸片烟雾等物理效果时卡的要死。
● 破解后HD5850+GTX285运行蝙蝠侠时的性能:
破解后,蝙蝠侠在启动时能检测到机器中存在N卡,开启PhysX不再有任何警告信息,直接开到High即可。可以看到这款游戏的推荐配置是GTX260+主卡和9800GTX+从卡,看来9800GTX+以上的“物理加速卡”有些浪费,真是委屈笔者手头这块GTX285了。
有了NV最强单卡GTX285当作物理卡加油助阵,HD5850的表现相当神勇,2560x1600优异分辨率特效全开最高跑出了60帧,最低帧数也有26,整个过程无比流畅没任何卡机或渲染错误的现象出现。
《蝙蝠侠:阿卡姆疯人院》作为作为最新的一款PhysX游戏,对于物理效果的应用几乎是无处不在的,A卡不支持PhysX,在游戏过程中确实会损失一些乐趣。
● 游戏PhysX效果对比截图:
在游戏中,开启和关闭PhysX效果之后,可以明显的感觉到地面上的碎纸片以及蝙蝠侠的披风在打斗中受气流的变化而飘舞,关闭的时候则不会有任何的变动。
这个场景可以看出,在开启PhysX效果后,有明显的烟雾效果,关闭后则没有此特效。
游戏PhysX物理选项提供了最高、中等和关闭三个级别。在最高等级下可以完全看到布条横幅、烟雾弥漫、碎屑乱飞等诸多效果,中等等级下有所弱化,不过至少烟雾效果变化不大。
● PhysX破解很完美,但前景不容乐观
由于笔者手头没有几款物理游戏,所以本次测试就草草收场了,既然最新最火爆的《蝙蝠侠》开PhysX High模式都能完美运行的话,相信绝大多数物理游戏(尤其是虚幻3系列)使用这种方法都不会有什么问题。
破解PhysX后,CUDA软件都能用了,当然还是使用N卡做运算
以笔者之见,这种破解方法虽然很完美,但如果NVIDIA想要刻意屏蔽的话,在新驱动中随便动一些手脚就能让破解补丁失效,这样以后更新驱动就十分不便了。不过,既然主卡是A卡的话就没必要经常去更新N卡的驱动,N卡驱动只要安装一次就万事大吉了,怕的就是将来新的物理游戏需要新版PhysX驱动支持的话,如果驱动做了限制那就前功尽弃了。看来A卡用户想要用N卡做物理加速卡的话,还是有很大的局限性。
● AMD没有物理技术,始终受制于人
AMD发布HD4000显卡之后,性能相比上代的HD3000系列有了质的提升,把对手NVIDIA打了个措手不及,自此之后同级A卡在3D性能方面丝毫不输给N卡。但遗憾的是NVIDIA拥有CUDA和PhysX两大法宝,而ATI的Stream难成气候,DX10.1缺乏有力支持,物理加速技术根本没有。较低的附加值使得A卡在竞争中很难占据有利地位。
说起CUDA相关应用软件的话,Stream也提供了类似的软件,虽然效果差一点、数量少一点,但也算是聊胜于无吧。而在GPU物理加速方面ATI根本无法染指,NVIDIA大力推广PhysX引擎初见成效,导致A卡在物理游戏中完全跑不动。
NVIDIA斥巨资收购Ageia,并花了很大的精力改写PhysX引擎使之能够支持CUDA架构的N卡。显然PhysX不会轻易对外开放尤其是给对手AMD,从NVIDIA的角度来考虑的话,对这种专利技术进行保护是无可厚非的。而且作为图形领域当之无愧的老大,NVIDIA显然不会甘心让N卡当作从卡(物理加速卡)使用,即便当物理卡卖也能增加销量或提高市场占有率。
但换一种角度来思考的话,在业界物理加速标准尚未正式确立,Intel(Havok)和微软(DirectCompute)虎视眈眈的情况下,最大限度的普及PhysX引擎,使之成为事实上的标准,如能取得成功远比多卖几块显卡更有意义,您觉得呢?■<