|
现在的物理加速有两大板块:PhysX和Havok。PhysX是基于专门的物理加速硬件的物理运算引擎,Havok是利用CPU软加速的物理引擎。到底哪个引擎效果更好更有前途?这正是大家关注的话题。
PhysX提出的背景是CPU运算能力无法满足大规模的物理运算的需求。专门的物理加速硬件能够提供比当时最强大的CPU高20倍以上的物理运算能力,这能够让以往预先渲染表现物理特性的动画实时的运算实现。不仅如此,过去根本不可能完成的实时环境互动、布料效果、流体效果、不规则和细小物体的碰撞检测、弹性运动、海量粒子运动都有望实时完成。可以说硬件物理加速对数字互动领域绝对是革命性的设想。nVIDIA接手PhysX为硬件物理运算提供了强劲的发展动力,因为GPU模型能够提供强大得多的物理运算效能。当初ATi也在GPU物理加速特别是碰撞检测模式上有丰硕的研究成果,并且也是支持PhysX的。可惜后来世事难料。
PhysX现阶段主要用于游戏中的爆炸碎片和物理环境的破坏效果,表现大量物体的碰撞受力运动,应用范围还非常狭窄。另外加载硬件运算物理模式和环境物体破坏产生大量的碎片在现有的图形渲染模式下会对系统造成过重的负担,大大降低游戏的流畅度。许多高级物理效果还未进入实用化就已经让系统不堪重负无疑是PhysX推广的重大障碍,而这样的问题只能期待具有更强大的性能和更强大的可编程硬件的出现。NV会如何推广PhysX标准不得而知,但是让GPU同时进行图形渲染和物理运算并不是个好主意,效率上难以让人满意。另外如果只有NV的GPU支持PhysX的硬件加速,对多数游戏厂商来说就缺乏吸引力。如今微软已经取得Havok的永久使用权,这对PhysX来说不是好事情。得不到微软的支持,PhysX前景不太被看好。PhysX同样支持CPU加速,NV不应该只执著于对GPU加速的推广。
Havok伴随着HL2的物理宣传声名鹊起,特别是布娃娃系统让人津津乐道。不过我更欣赏英雄连当中Havok的表现,完全的环境互动给人非常震撼的感受,相反PhysX并没有哪部作品给人留下多少深刻的印象。PhysX没有表现出硬件加速相对于Havok的CPU运算效果上显著的优势,Havok的优势则在于只要有主流的CPU就能够流畅运行,加上优秀的表现效果得到了越来越多的游戏开发商的支持。如今多核心CPU大行其道,CPU物理加速获得了空前的发展机遇。有Intel和微软的全面支持,Havok前景一片光明。Havok在Intel手中必然会向硬件加速拓展,微软未来的DirectX也必然要加入硬件物理加速功能。Intel和AMD都能够以混合CPU或者混和GPU的方式实现Havok物理硬件加速,不过这取决于Intel在硬件上的进展,乐观估计也要在两年后才能实现。在此期间,PhysX才有取胜对手的机会。NV是否能拉拢AMD全面支持PhysX硬件加速并且实现Havok无法实现的震撼效果是杀出困境的关键。
暴雪的星际2和暗黑3都加入了对Havok的支持。不过星际2的支持相当有限,这是为了避免操作中不可控的意外出现,这和Relic对Havok的全面支持不可同日而语。暗黑3对Havok的支持相当出色,因此这两款游戏没有必要再加入对AMD硬件的物理加速的专门支持,AMD也没有正式表示通过GPU支持Havok的硬件物理加速。Intel恐怕也不会支持AMD先于自己提供Havok硬件物理加速。
|
|