尽管NVIDIA与AMD在显示技术上具备物理硬件加速、DirectX 10.1等法宝,但在实际应用中却并未给人留下深刻印象。NVIDIA的物理硬件加速技术除了在《虚幻竞技场3》通过加载补丁包能有独特表现外,在《孤岛惊魂2》等热门游戏中与AMD显卡相比并没有明显区别。而AMD显卡对
DirectX 10.1 API独有的支持能力却因为DirectX 10.1游戏极少,因此难有表现机会,给人留下深印象的只有它们在《刺客信条》里的杰出表现。不过随着游戏、图像引擎公司对这二大技术的了解、学习,一些与之相应的软件孕育而出。例如此次我们将为大家介绍的这款以物理特效为卖点的《Cryostasis: Sleep of Reason》(雪域危机:沉睡之谜)TECHDEMO,以及采用DirectX 10.1
API编写的技术演示Demo《Tropics 1.1》(热带海岛 1.1),那么这两款软件有什么技术特点?
NVIDIA与AMD显卡在这两款软件中能有比较特别的表现吗?下面就让我们为大家一一道来。
《Cryostasis: Sleep of Reason》(下简称《雪域》)是一款类似生化恐怖袭击的游戏,该游戏将在今年初上市。抛开游戏本身的设计和可玩性,它吸引我们的是DirectX 10的优秀画质以及利用PhysX技术模拟的流体力学效果,目前该游戏已在网络上放出一个TECHDEMO展示该游戏的技术特效,我们此次也是通过该DEMO来体验游戏的主要特点。
《雪域》中的水流从顶棚喷射而下,洒落在游戏主人公身上,并自然的流淌开来。细心观察就可发现,每个水滴都有光照效果处理,并且没有重复的水滴,全部是实时计算。
在之前的游戏中,对于水的视觉效果处理已经达到了一个不错的地步,比如《Crysis》中的热带海面模拟,水面无论是光照还是海边的水痕渐次消失等效果,都非常精美。但是,这种对水的模拟,仅仅是建立在视觉效果基础上的。为什么这样说呢?我们可以做一个实验,如果你在《
Crysis》向海中投入一块石头,会发现水的泼溅效果、流动效果都比较稀少。这是和真实环境中的物理效果相悖的。
这是进入下一层后,打死僵尸并破坏水管,水流四溅射出的场景。不得不说的是,游戏中的水流喷射效果非常棒,但问题在于,水流如果集聚在地面上,流淌状态给人的感觉并不像水,反而更像油,过于粘稠,且不能自如的分散。看来,虽然物理效果带给游戏极大的飞跃,要想真实而自如的表现,还是需要技术研究人员更加努力。
因此,在《雪域》这款游戏中,引入了可以辅助水面进行物理效果处理的SPH(光滑粒子动力学)技术。SPH是近20年才流行起来的一种比较新的算法,基础来源依旧是粒子方法。粒子方法是把连续的物理量用多数粒子的集合来插值表示或者模拟的数值解析方法。简单地说,我们没有办法对一团液体的整体状况进行评估,因此我们将液体看作许许多多光滑的小颗粒,利用这些小颗粒的各自碰撞、运动等状态,来模拟整团液体的运动状态。可能你会疑问,用固体的颗粒来模拟液态的水,不会很假吗?
游戏中主人公会用一把枪对玻璃桌子射击。这是子弹从枪膛中冲出,接触到玻璃一瞬间的截图。火光效果清晰可见,玻璃表面已经有了丝丝裂纹。接下来玻璃碎裂,碎片向着各个方向飞溅落下,桌子上的瓶瓶罐罐也在碰撞中四散开来。
实际上,当这些颗粒足够小,比如和水分子一样小,那么它的运动状态就和整团液体完全相同了。实际计算中,用户可以根据模拟精度的需要,来权衡处理是使用更小、更多的粒子更为逼近真实的效果,还是使用更大、更少的粒子来提升游戏运行速度。与普通的粒子引擎相比,SPH技术还可以引入黏性、光线映射等效果,并且严格符合物理力学特征。
在整个《雪域》的技术演示中,技术人员使用了多达三万个互动的粒子来模拟水流,并且充分赋予这些“粒子水”泼溅、流动、扩散等特性,光线效果方面也尽量靠近真实。除了水流之外,《雪域》中还使用了布料模拟和火焰模拟等特效技术,并且对玻璃的破碎、物体碰撞等都有良好的表现。