论文部分内容阅读
自NVIDIA ForceWare 177.39驱动中的PhysX 8.06.12版驱动程序支持物理加速以来,大幅提升3DMark Vantage的得分,引起用户的广泛关注。随后NVIDIA开始力推PhysX物理加速技术,以物理加速的优势来和ATi红透半边天的性价比之王HD4850相抗衡。那么物理加速技术到底能够为游戏带来什么改进,以及对显卡有什么附加的要求呢?且听本文为你慢慢道来。
3D更真实,物理计算贴近现实
从2D到3D,对游戏画面而言是一次质的飞跃,游戏画面首次更加接近真实,画面更加精美,给游戏玩家带来的不仅仅只有震撼,更是一种全新的游戏体验,首片3D加速卡3Dfx Voodoo想必让不少资深玩家怀念不已。随着3D显示技术的发展,电影级的CG效果让游戏画面更上一层楼,不过对于3D游戏而言,尽管细节可以做到惟妙惟肖,例如一片树叶,可以事先从叶脉到边缘锯齿,甚至叶片上的水滴都做到接近真实,但这都是事先建好的场景模型,所有的物体都只是贴图而已。树上的叶片不会迎风拂动或者只会生硬地拂动;小草被坦克压过仍然“倔强”地挺立;任由枪炮子弹轰炸的木板墙永远都屹立不倒,毫发无伤。诸如此类的现象在游戏中司空见惯,3D场景虽然长得非常漂亮了,但物体表现却与现实完全不同,3D加速技术只是与现实“长得很像”而已。
随着Ageia在2006年推出PPU及物理加速引擎创造物理加速先河,物理加速概念被广大游戏玩家熟知,有了物理加速,在3D游戏和应用中就可以看到更多真实的物理运算过程,例如山石滚落、爆炸、水流等场景,物体都将遵循真实的轨迹运行。在游戏中实现物理定律的还原是相当复杂的,因为在游戏世界的物体都是虚拟的,设计时要为它附上质量、材料、密度等属性。就以简单的碰撞为例吧,同样是碰撞,由于材料的不同,同样速度的物体碰撞后的结果并不相同,这带来的好处是3D环境中的事物将无比真实,运动方式将遵循物理定律而不是按事先指定好的一种或者多种方式进行。可以说,物理运算的加入,让3D世界更接近真正的世界。遗憾的是,Ageia虽然联合华硕、BFG推出物理加速卡,不过由于当年支持物理加速的游戏甚少,并且物理加速卡价格不菲,上千元的售价已经足以购买一片中高端显卡,导致物理加速并未成为主流产品,而陷入运营困境,直到被NVIDIA收购。
PhysX物理加速在NV手中“重生”
今年2月,NVIDIA收购了物理加速处理器厂商Ageia,将其旗下PhysX物理引擎进行整合,让NVIDIA的GPU支持物理运算引擎,在NVIDIA的ForceWare 177.39中,整合了PhysX 8.06.12版驱动,支持9800GT/GTX/GTX+/GX2以及GTX280/260等显卡进行物理计算。Ageia在被收购后,虽然PPU (物理运算处理器) 已经夭折,不过PhysX物理引擎却获得重生。至此,Intel收购了Havok拥有了自己的物理加速技术,而NVIDIA也凭借PhysX引擎,支持物理加速。
我们再来看看NVIDIA PhysX对物理加速的实现方法。它实际上抛弃了PPU,而是采用通用计算技术,让GPU来运行物理加速所需的计算。而对于物理计算来说,GPU的设计结构最适合其运算,因为一颗典型的GPU从结构的角度来说是一颗目的性非常明确的并行处理器,大量的Shader核心,超高的浮点运算能力,天生就适合并行运算。也就是如果用CPU进行复杂的物理运算的话,性能将比GPU运行同样的物理运算要差得多。GPU能做量大但不复杂的工作,而CPU擅长复杂运算但并行大量运算性能较差。而最新的PhysX 8.09.04 WHQL版,则提供了对NVIDIA GeForce全系列显卡的支持,让用户的中低端显卡也能够支持物理加速。
PhysX还是Havok,物理加速的标准之争
现阶段物理加速的游戏已经多达150余款,并且有越来越多的游戏宣布开始支持物理加速功能。目前支持物理加速的游戏分别支持Havok和PhysX物理加速引擎,由于采用物理加速引擎的不同,支持的硬件也有所不同。例如NVIDIA的PhysX物理加速引擎,就只能通过NVIDIA显卡的驱动进行支持。另外被普遍采用的一种物理加速引擎则是被Intel收购的Havok,目前被《Half-Life 2》、《荣誉勋章》、《帝国时代》、《F.E.A.R》、《分裂细胞》、《上古卷轴》等等大作在内的100多款游戏采用,XBOX360也是采用Havok引擎。不过和NVIDIA采用GPU进行物理加速运算不同,Intel借助多核心CPU的潜在运算能力来执行物理加速运算,将CPU作为PPU(物理处理器)来使用。如此一来,未来计算机处理物理运算时,只要处理器性能足够强大,就能实现物理加速。但是现在CPU在处理物理运算的时候性能依然不理想,即便是现在最顶级处理器,也只能同时模拟几十个具有大致物理特征的物体。要想成功,CPU-PPU之路任重而道远。
另一显卡巨头ATi,虽然在2006年就成功让显卡运行了物理运算的DEMO,采用的是Havok引擎并且速度很快,不过由于Havok被Intel收购,而NVIDIA则收购了Ageia,ATi在物理加速上没有自身的标准,RV770也使用Havok物理加速引擎。而Intel为了扩大物理加速市场,宣布将Havok引擎免费开放,将获得更多的游戏厂商支持。因此,未来物理加速市场,将是Havok和PhysX的战场。
DX11也将支持物理加速
除了Havok和PhysX针锋相对之外,微软明年推出的下一代3D API DirectX 11也将支持物理加速计算——Compute Shader支持,不过让NVIDIA尴尬的是,DirectX11将不支持PhysX,而对Havok,微软没有明确表示支持或者不支持,但根据Havok的加速原理是使用处理器进行物理运算,DirectX 11或许会支持英特尔的Havok物理加速。而如果是支持Havok的话,那么英特尔和AMD的显示卡将获得巨大的效率提升。因此未来虽然或许会有公司推出支持PhysX API的应用,但估计大部分程序员还是喜欢使用微软提供的API接口来实现物理加速。
也就是说,到明年用户可能面临两种物理加速的解决方案,一种是DirectX 11的Compute Shader,而另一种则是NVIDIA的PhysX。不过微软DirectX11能否得到游戏厂商的广泛支持,将是游戏厂商和NVIDIA无法逾越的一道墙。
目前不宜盲目追求物理加速
不容置疑的是,物理加速将成为提升3D游戏真实感的一个大趋势,未来越来越多的游戏都将支持物理加速。但是就目前的现状而言,虽然NVIDIA新版的物理驱动将物理加速的支持显卡方位扩充到全部8系列和9系列显卡,但是对于中低端DirectX 10显卡而言,目前在游戏中亟需解决的还是速度问题,而不是利用显卡的额外计算来提升游戏的真实性。毕竟现在很多中低端显卡,对于大多数DirextX 10游戏不能完全胜任,再进行额外的物理运算,性能让人担忧。相比之下,利用高端显卡剩余的运算能力进行物理加速,能够为用户提供更好的游戏真实感,是一件让人兴奋的事情。但是目前用户也不宜盲目追求物理加速,毕竟现在支持物理加速的游戏的比例较低,并且标准尚未确定,为了物理加速而升级显卡并不可取。建议用户不妨等待DirectX 11尘埃落地,到时候物理加速成为3D API的一个标准,估计会有更多支持物理加速的游戏涌现。
3D更真实,物理计算贴近现实
从2D到3D,对游戏画面而言是一次质的飞跃,游戏画面首次更加接近真实,画面更加精美,给游戏玩家带来的不仅仅只有震撼,更是一种全新的游戏体验,首片3D加速卡3Dfx Voodoo想必让不少资深玩家怀念不已。随着3D显示技术的发展,电影级的CG效果让游戏画面更上一层楼,不过对于3D游戏而言,尽管细节可以做到惟妙惟肖,例如一片树叶,可以事先从叶脉到边缘锯齿,甚至叶片上的水滴都做到接近真实,但这都是事先建好的场景模型,所有的物体都只是贴图而已。树上的叶片不会迎风拂动或者只会生硬地拂动;小草被坦克压过仍然“倔强”地挺立;任由枪炮子弹轰炸的木板墙永远都屹立不倒,毫发无伤。诸如此类的现象在游戏中司空见惯,3D场景虽然长得非常漂亮了,但物体表现却与现实完全不同,3D加速技术只是与现实“长得很像”而已。
随着Ageia在2006年推出PPU及物理加速引擎创造物理加速先河,物理加速概念被广大游戏玩家熟知,有了物理加速,在3D游戏和应用中就可以看到更多真实的物理运算过程,例如山石滚落、爆炸、水流等场景,物体都将遵循真实的轨迹运行。在游戏中实现物理定律的还原是相当复杂的,因为在游戏世界的物体都是虚拟的,设计时要为它附上质量、材料、密度等属性。就以简单的碰撞为例吧,同样是碰撞,由于材料的不同,同样速度的物体碰撞后的结果并不相同,这带来的好处是3D环境中的事物将无比真实,运动方式将遵循物理定律而不是按事先指定好的一种或者多种方式进行。可以说,物理运算的加入,让3D世界更接近真正的世界。遗憾的是,Ageia虽然联合华硕、BFG推出物理加速卡,不过由于当年支持物理加速的游戏甚少,并且物理加速卡价格不菲,上千元的售价已经足以购买一片中高端显卡,导致物理加速并未成为主流产品,而陷入运营困境,直到被NVIDIA收购。
PhysX物理加速在NV手中“重生”
今年2月,NVIDIA收购了物理加速处理器厂商Ageia,将其旗下PhysX物理引擎进行整合,让NVIDIA的GPU支持物理运算引擎,在NVIDIA的ForceWare 177.39中,整合了PhysX 8.06.12版驱动,支持9800GT/GTX/GTX+/GX2以及GTX280/260等显卡进行物理计算。Ageia在被收购后,虽然PPU (物理运算处理器) 已经夭折,不过PhysX物理引擎却获得重生。至此,Intel收购了Havok拥有了自己的物理加速技术,而NVIDIA也凭借PhysX引擎,支持物理加速。
我们再来看看NVIDIA PhysX对物理加速的实现方法。它实际上抛弃了PPU,而是采用通用计算技术,让GPU来运行物理加速所需的计算。而对于物理计算来说,GPU的设计结构最适合其运算,因为一颗典型的GPU从结构的角度来说是一颗目的性非常明确的并行处理器,大量的Shader核心,超高的浮点运算能力,天生就适合并行运算。也就是如果用CPU进行复杂的物理运算的话,性能将比GPU运行同样的物理运算要差得多。GPU能做量大但不复杂的工作,而CPU擅长复杂运算但并行大量运算性能较差。而最新的PhysX 8.09.04 WHQL版,则提供了对NVIDIA GeForce全系列显卡的支持,让用户的中低端显卡也能够支持物理加速。
PhysX还是Havok,物理加速的标准之争
现阶段物理加速的游戏已经多达150余款,并且有越来越多的游戏宣布开始支持物理加速功能。目前支持物理加速的游戏分别支持Havok和PhysX物理加速引擎,由于采用物理加速引擎的不同,支持的硬件也有所不同。例如NVIDIA的PhysX物理加速引擎,就只能通过NVIDIA显卡的驱动进行支持。另外被普遍采用的一种物理加速引擎则是被Intel收购的Havok,目前被《Half-Life 2》、《荣誉勋章》、《帝国时代》、《F.E.A.R》、《分裂细胞》、《上古卷轴》等等大作在内的100多款游戏采用,XBOX360也是采用Havok引擎。不过和NVIDIA采用GPU进行物理加速运算不同,Intel借助多核心CPU的潜在运算能力来执行物理加速运算,将CPU作为PPU(物理处理器)来使用。如此一来,未来计算机处理物理运算时,只要处理器性能足够强大,就能实现物理加速。但是现在CPU在处理物理运算的时候性能依然不理想,即便是现在最顶级处理器,也只能同时模拟几十个具有大致物理特征的物体。要想成功,CPU-PPU之路任重而道远。
另一显卡巨头ATi,虽然在2006年就成功让显卡运行了物理运算的DEMO,采用的是Havok引擎并且速度很快,不过由于Havok被Intel收购,而NVIDIA则收购了Ageia,ATi在物理加速上没有自身的标准,RV770也使用Havok物理加速引擎。而Intel为了扩大物理加速市场,宣布将Havok引擎免费开放,将获得更多的游戏厂商支持。因此,未来物理加速市场,将是Havok和PhysX的战场。
DX11也将支持物理加速
除了Havok和PhysX针锋相对之外,微软明年推出的下一代3D API DirectX 11也将支持物理加速计算——Compute Shader支持,不过让NVIDIA尴尬的是,DirectX11将不支持PhysX,而对Havok,微软没有明确表示支持或者不支持,但根据Havok的加速原理是使用处理器进行物理运算,DirectX 11或许会支持英特尔的Havok物理加速。而如果是支持Havok的话,那么英特尔和AMD的显示卡将获得巨大的效率提升。因此未来虽然或许会有公司推出支持PhysX API的应用,但估计大部分程序员还是喜欢使用微软提供的API接口来实现物理加速。
也就是说,到明年用户可能面临两种物理加速的解决方案,一种是DirectX 11的Compute Shader,而另一种则是NVIDIA的PhysX。不过微软DirectX11能否得到游戏厂商的广泛支持,将是游戏厂商和NVIDIA无法逾越的一道墙。
目前不宜盲目追求物理加速
不容置疑的是,物理加速将成为提升3D游戏真实感的一个大趋势,未来越来越多的游戏都将支持物理加速。但是就目前的现状而言,虽然NVIDIA新版的物理驱动将物理加速的支持显卡方位扩充到全部8系列和9系列显卡,但是对于中低端DirectX 10显卡而言,目前在游戏中亟需解决的还是速度问题,而不是利用显卡的额外计算来提升游戏的真实性。毕竟现在很多中低端显卡,对于大多数DirextX 10游戏不能完全胜任,再进行额外的物理运算,性能让人担忧。相比之下,利用高端显卡剩余的运算能力进行物理加速,能够为用户提供更好的游戏真实感,是一件让人兴奋的事情。但是目前用户也不宜盲目追求物理加速,毕竟现在支持物理加速的游戏的比例较低,并且标准尚未确定,为了物理加速而升级显卡并不可取。建议用户不妨等待DirectX 11尘埃落地,到时候物理加速成为3D API的一个标准,估计会有更多支持物理加速的游戏涌现。