PhysX深入PC-Game
2008年8月6日,NVIDIA公司正式推出了基于GeForce系列显示核心的PhysX物理加速技术,这是PC游戏领域里的一次重要革命,因为PC游戏在实现了高度拟真的3D画面之后,近几年缺少具有革命性的技术突破,但是物理加速的引入再次为PC游戏带来了质的飞跃。
早在2005年,AGEIA发明了供PC使用的物理计算技术,同期发布了针对物理加速设计的PPU——物理处理器,提供了远胜CPU的物理运算能力。这一年,NVIDIA公司也创新的考虑到了利用GPU进行通用计算的能力,在大幅提高浮点运算能力之后,借助CUDA解决方案,GPU已经可以处理除基本3D运算之外更多的任务。
在AGEIA被NVIDIA公司收购之后,凭借GPU高速运算能力的支撑与CUDA技术的支持,PhysX物理加速技术也从幕后走向前台。现在市面上已经有很多重量级的游戏提供了对PhysX的支持,可见游戏厂商们十分看好这项技术。
通过CUDA通用接口,PhysX引擎将NVIDIA GPU中的Thread Scheduler(线程管理器)模拟成Control Engine(控制引擎CE),而Streaming Processors来模拟Vector Processing Engine(矢量处理引擎,VPE),其中CE控制引擎负责任务的指派,相当于PhysX中的主管机构,而真正的物理运算任务则是由VPE矢量引擎来完成,最后通过Data Movement Engine(数据移动引擎DME)输出。
对于GPU而言,进行PhysX物理加速的运算主要集中在3D核心部分,进行运算必然要占用资源,对于高端产品而言,支持PhysX物理加速技术只会带来较小的负担,而对于中低端GPU而言,进行PhysX物理加速计算会对游戏速度带来负面影响。不过,在PhysX发布一年之后,NVIDIA和游戏厂商们已经完全掌握了PhysX的开发方法,在中端显卡上使用PhysX计算对性能带来的影响已经被降至最低。在之后我们测试华硕的这款EN9800GT中,将详细的为大家说明。
2008年6月PhysX是与GTX280显卡一同面世的,GTX280及其强大的硬件规格为PhysX提供了坚实的性能保障,PhysX在NVIDIA全系列GT200核心上均可获得较佳的运行速度。然而进入2009年11月份,GTX285价格依然在2500元以上,而中高端的GTX260和GTX275也在千元之上,难道说主流中端用户就无缘PhysX了么?
当然不是,在这一年当中,NVIDIA为PhysX投入了大量人力物力进行研发,至今为止所有的Geforce 8/9/200系列显卡不论性能高低,均可以使用PhysX物理加速技术。今天我们就以华硕的EN9800GT显卡为主角,测试一下PhysX在主流显卡上运行的实际效果。
华硕 EN9800GT/HTDP/512M冰刃版采用G92图形核心,基于55nm工艺制造,内建112个Streaming Processor处理单元,支持DirectX 10与Shader Moder 4.0技术。显卡采用大板型蓝色PCB制造,很有当时9800GT刚刚上市时候的风格,显卡全部采用固态电容与屏蔽式电感打造,搭配高效的冰刃散热器,是目前市售9800GT中做工质量最优秀的显卡。
显卡正面特写
显卡采用了3+1相供电系统,核心3相+显存1相,每相供电均由多个高品质固态电容加一个屏蔽式电感组成,核心供电每相集成2个MOSFEAT,显存供电则使用了3个MOSFEAT,显卡提供一个6PIN电源输入接口。整体来说,华硕这款 EN9800GT/HTDP/512M冰刃版完全重现了9800GT公版显卡上市时的做工。
输出方面,显卡提供了HDMI+DVI+VGA全视频接口,可以接驳各种显示设备。
华硕 EN9800GT/HTDP/512M冰刃版整体做工十分优秀,显卡用料没有任何精简的迹象,在9800GT显卡当中独当一面。
接下来让我们详细观察一下这款华硕 EN9800GT/HTDP/512M,拆下散热器之后,显卡整个PCB一览无余,可能有很多玩家十分熟悉这样的显卡布局,这种布局设十分类似当初Geforce 8800GT显卡上市时的PCB设计,8个显存颗粒呈圆弧形分布在核心周围,全规格的低通滤波电路与完整的供电电路分别分布在显卡两侧。
显卡PCB正面特写
Geforce9800GT所采用的G92-286-B1核心,基于成熟的55nm工艺制造,在当今游戏中依然可以提供强劲的性能。
显卡板载8颗现代1.0ns高速GDDR3显存颗粒,组成512MB/256bit显存规格,默认核心显存频率600/1800MHz,留有一定的超频空间。
著名的华硕冰刃散热器,从底观察,金黄色的铝合金散热鳍片呈放射状分布,与核心接触11,
首先进行的是batman arkham asylum(蝙蝠侠:阿卡姆疯人院)测试,这款游戏由著名的蝙蝠侠系列电影最新作改编而成,在《蝙蝠侠:阿卡姆疯人院》里你将扮演蝙蝠侠把小丑送进阿卡姆疯人院,这里的超级恶棍设下了圈套,一场真实的格斗体验即将拉开萤幕。《蝙蝠侠:阿卡姆疯人院》将给玩家带来一场不同寻常的,阴暗并且富有戏剧性的冒险历程,我们将抵达阿卡姆疯人院的最深处--位于哥谭市用来关押精神病犯人的精神病院.玩家将在黑暗中前行,带给敌人以恐惧,并且和小丑以及那些控制了疯人院哥谭市最臭名昭著的恶棍们一决胜负。
游戏设置界面
PhysX物理选项提供了最高、中等和关闭三个级别。在最高等级下可以完全看到布条横幅、烟雾弥漫、碎屑乱飞等诸多效果。玩家可以在充满立体浓雾的昏暗走廊中探索前行,这些浓雾可以随着蝙蝠侠的动作而运动,蜘蛛网在蝙蝠侠穿过它时能够支离破碎。打斗场面则令人眼花缭乱,蝙蝠侠每放倒一个小丑的狗腿子,都会在地上扬起纸片、汽水罐以及垃圾等物。整个游戏当中,破败的哥特式建筑细节表现非常完美,墙面砖的碎片和断裂效果足以乱真,石柱能够在冲击之下剥落碎片,玻璃碎块以及碎片会掉落在蝙蝠侠脚下,碎成粒子。
开启PhysX后,地上的绳子摇摆的运动状况与蝙蝠侠的披风的晃动都可以真实的模拟出来。
人物的运动状况也被准确的还原出来,蝙蝠侠各种技能攻击都可以让敌人产生不同的反应。
测试结果
开启PhysX:
下面进入正式测试,在开启PhysX并设置为High,整体特效设置为中的情况下,选取游戏一开始蝙蝠侠押送小丑进入疯人院的一段路程进行FRAPS测试,华硕 EN9800GT/HTDP/512MD3得到了47.820的帧数,游戏整体运行十分流畅。
关闭PhysX:在驱动中关闭PhysX选项,游戏内仍然设置PhysX为High,其他设置不变,模拟没有PhysX功能的显卡运行PhysX特效的情况。
我们发现驱动中关闭PhysX以后,整个游戏的运行速度下降了72%,仅以13.495FPS勉强运行,一旦进入打斗场景,游戏速度甚至降低为0.
镜之边缘是一款罕见的以第一人称视角呈现在玩家面前的动作游戏。动作游戏也分很多,而在本作中,玩家并不能做像鬼泣那种魔域历险故事里的那种华丽格斗,玩家能做的是现实中也能做的事——攀爬、飞檐走壁、铲地滑行等跑酷爱好者们热衷的运动。玩跑酷需要强健的身体素质,大多数人恐怕并不在行,搞不好还要扭伤自己。而镜之边缘则给了众玩家一个狂奔的机会。
游戏设置界面
在设置中我们选用了1680X1050标准分辨率,关闭SYNC,所有特效设置为最高,开启4倍FSAA,开启PhysX物理加速。
游戏中加入了大量后期处理特效,例如在Crysis中大放异彩的多重景深(Depth of Field)特效,其实用UT3引擎做出来的效果也毫不逊色。图上随着人物视角的转移,铁丝网后面的景物由清晰变得模糊起来,运动中的真实感非常强烈。
测试结果
开启PhysX:
开启PhysX,进入游戏后选取开场的一段实时演算过场动画进行FRAPS测试,整体速度较快,平均帧数在50FPS左右,游戏过程十分顺畅。
关闭PhysX:
关闭PhysX,仍然选择刚才的场景进行FRAPS测试,观察游戏运行情况。
在关闭PhysX后,游戏速度明显降低,帧数只能在20-30FPS左右浮动,同时伴随有间歇性卡顿。
在一舞成名这一个PhysX技术演示中,一名领舞与四名伴舞均身着旗袍,其摆动的相关骨点超过14000个。由于如此大的运算量会对CPU造成相当的负荷,该产品运行时使用了GPU分担一部分压力,并取得了相当显著的效果。仅仅一块主流价格的显卡,就可使该游戏在开启HDR,景深等图像效果的情况下轻松达到1920*1200的分辨率,同时触发超过14000个衣物骨点根据动态几何原理产生碰撞,即便如此游戏的流畅度仍可达到每秒35桢。
StarTalesBenchmark
测试结果
开启PhysX:
开启PhysX,整个测试过程很流畅,帧数稳定在30-40FPS,观赏性较高。
关闭PhysX:
驱动中关闭PhysX后,整个程序运行速度大幅降低到
关闭PhysX,整个性能下降幅度还是很明显的,从31FPS降低到10FPS,看起来GPU处理物理效果确实要比CPU强很多。
如果说优秀的富余计算资源是GPU能够普及PhysX物理加速技术的基石,那么将CUDA就是PhysX能够取得成功的最大功臣。CUDA并非是一个新生事物,关于它的报道已经从最初单一硬件行业开始向软件等综合领域转移。对于众多开发人员,CUDA已经开始进入了他们的生活,但是对于泛泛大众,CUDA依然蒙着一层神秘的面纱。
真正让CUDA进入普通家庭的是来自Elemental Technologies出品的一款视频转换软件Badaboom。这是一个民用级别的视频编码软件产品,可以方便的将视频文件压缩为iPhone、iPod nano、PS3、PSP以及XBOX360等设备所能够播放的视频规格,而它也是世界上第一款由显卡进行编码的视频转换软件。
实际上世界上有不计其数的软件均可以实现这样的视频转换功能,但Badaboom 的魅力在于它能够支持NVIDIA的CUDA技术,通过使用GPU庞大的计算单元来实现大规模多线程的并行计算加速,从而将原本令人无法忍耐的编码时间大大缩短,为人们提供了一个高效率的解决方案。
下面我们就来介绍一下Badaboom的用法,让您更好的利用NVIDIA显卡的强大运算能力。
Badaboom主界面
接下来选择输出格式,在右边的列表中有各种流行设备支持的视频格式
目前Badaboom并不支持GPU解码视频文件,因为NVIDIA提供的CUDA类库中没有提供支持视频解码的包,因此视频解码只能由CPU来运算,不过在视频编码过程中,CUDA提供了大量的代码库,Badaboom可以充分利用CUDA代码调用GPU进行高速视频编码。
在编码器设置中,可以选择动态比例还是固定比例,以及是否需要关键帧,关键帧就是在视频转换过程中在大动态画面中插入补偿帧提高视频流畅度。如果用户不是很熟悉相关设置,可以直接使用默认值。
图片设置可以调整输出视频文件的分辨率,画面比例等,一般用户均可以很好理解。
在音频设置中,用户可以选择输出视频文件采用的音频编码格式,如果用户不了解各种手持设备的详细情况,最好采用默认设置,否则很有可能遇到播放视频无声的情况。
总结:
近一年来市面上支持PhysX物理加速技术的游戏层出不穷,大有愈演愈烈之势,再次证明NVIDIA在游戏优化上走在了AMD前面,依靠Geforce系列显卡这个庞大的用户群,PhysX技术博得了众多游戏厂商的青睐,09年游戏大作极品飞车13就是最佳的证明,相信明年我们会看到更多采用PhysX技术的游戏面世。在CUDA方面,Adobe已经明确表态旗下全系列产品都会加入CUDA计算模式,这其中包含家喻户晓的Photoshop等重量级软件,无疑又会给NVIDIA注入一针强心剂。
对于用户来讲,一块像华硕 EN9800GT/HTDP/512M冰刃版这样的中端显卡即可完美享受到全部的PhysX特效及CUDA加速功能,无疑极大地提升了显卡的性价比,同时让显卡除游戏之外能有更多的用处,何乐而不为呢?