2006年10月30日星期一

离电影画质有多远?详谈DX10最新特效

DirectX经过几年的发展,目前DirectX已经发展到了V9.0c版本,DirectX9.0没有令我们失望,其所带来的电影级画面渲染效果给我们造成的震撼绝不亚于当年3Dfx的Voodoo对整个3D游戏业的影响。但微软并没有止步不前,目前DirectX 9.0c的继任者DirectX 10已经呼之欲出,这种即将随同微软Windows Vista操作系统一同面世的DirectX API将再次撼动当今显示卡市场的格局,因为这又将是一个新时代的开始 ,当然具体到商业领域,势必又将引发目前图形业双雄在标准确立乃至最终产品规格上的较量。那么,作为DirectX发展史上又一个里程碑式的标准,它给我们带来了什么呢?下面让我们就目前各方已经掌握的信息来为大家介绍一下DirectX10最主要的几大技术进步:

离电影画质有多远?详谈DX10最新特效
让人期待的DirectX 10.0

1、Shader Model 4.0

相信大家在选购显卡时已经都向是否支持DirectX9.0c看齐,而Shader Model 3.0则是DirectX9.0c最大的特色。虽然DirectX9.0c与DirectX9.0b仅仅只是一个字母之差,但DirectX9.0c所支持的SM3.0与DirectX9.0b所支持的SM2.0在功能、特效方面却有差很大的差别。在而呼之欲出的DirectX10中,Shader Model也将升级到Shader Model4.0,那么SM4.0比SM3.0优势在哪呢?

离电影画质有多远?详谈DX10最新特效
DX10的游戏画面几乎可以以假乱真

SM4.0规格令游戏程序开发员有更大的空间,相比原先的Shader Model 3.0自然继续有所提升,特别是对于最大指令数从512条增加到了64000条;暂存器数量也从原先的32个增加到惊人的4096个,而同时Texture由SM3.0的16个提升至128个,并硬件支持RGBE,令HDR不再需要特别的Decoding处理也能实现,HDR+AA将不再有这么多的麻烦。对于2D的纹理尺寸支持来看,DirectX 10也有惊人的提升,8192x8192的最高纹理分辩率比原先最高2048x2048的分辩率要高出许多。早在此前的E3上,微软就公布部分飞行模拟X中的DX9/DX10的游戏画面对比。从画面上我们可以看到其水面效果十分的逼真,同时淡化了DirectX 9.0版本比较虚假的山脉在水中的倒影。在上图中,左边的为现实世界的真实场景,右边为游戏里的虚拟环境,你能看的出有多大区别吗?

2、统一渲染架构

相对SM4.0,其实在Shader Model 4.0中微软将引入统一着色架构,这才是DX10最大的更进。我们都知道,微软在DirectX 9中引入的了2.0/2.X/3.0三个版本的Vertex Shader(顶点着色引擎)以及Pixel Shader(像素着色引擎)。其中支持2.0版的着色引擎是DirectX 9的GPU的最低标准,而当前主流的显卡已经都硬件支持加入了拥有更多高级处理功能的3.0版本着色引擎。不过,即便是DirectX9.0c,对于功能相仿Vertex Shader、Pixel Shader来说,目前图形芯片厂商仍需要在GPU中划分两个区域来存放Vertex Shader阵列和Pixel Shader贴图流水线。这无疑是一种资源冗余,而且这也加重GPU的设计难度及成本。当Direct X10把渲染流程更细分为Vertex Shader、Geometry Shader及Pixel Shader,这个情况将会更为明显。那么,有没有可能把这两者整合在一起呢?答案就是肯定的!

离电影画质有多远?详谈DX10最新特效
ATI为Xbox 360设计的Xenos芯片已经采用US架构

而在DirectX 10中引入了统一渲染架,通过一个整合Vertex Shader、 Pixel Shader的可编程整合光影处理器来完成目前Vertex Shader、Pixel Shader所有的工作。所谓统一渲染架构,最容易的理解方式就是Shader单元不再分离,显示核心不再为Shader类型不同而配置不同类型的Shader单元,对于主流的显示核心,Pixel Shader单元以及Vertex Shader单元的概念都应该已经非常熟悉了,而在统一渲染架构中这两种Shader单元将不再分离,转而所有的Shader单元都可以为需要处理的数据进行处理,不管和是Pixel Shader数据还是Vertex Shader数据。而调配哪几组Shader单元负责处理什么数据或者进行什么样子类型的计算,则由一个被称为Small Sets of Instructions(SSI)的部分来控制。这样在硬件上,设计者就无需为不同的着色引擎设计不同的执行单元,只要按照所对应的接口以及操作方式全部融为一体,仅设置一种独立的Shader执行单元。这意味着GPU厂家可以用更小的核心来实现现在需要用8000万甚至更多晶体管才能实现的功能!

3、Physics(物理加速)技术

最近热门的技术就是物理加速及其应用,物理计算是下一代游戏体验当中的关键部分,它将增加游戏的真实感、沉浸感和带来更加有趣的体验。NVIDIA同样对物理加速非常感兴趣,在未来的DX10产品中会加入物理加速的支持。

离电影画质有多远?详谈DX10最新特效
AGEIA最早提出物理加速的概念

虽然,物理加速的概念很早之前就已经提出,但时至今日依然处于概念性阶段——AGEIA的物理加速卡仅有几款游戏能够支持,而ATI的GPU物理加速才刚刚进行完Demo演示,NVIDIA的SLI物理加速也要等待游戏厂商采用Havok FX引擎才能够出台!推广进程如此缓慢因为标准的不统一。AGEIA和Havok两大阵营的物理加速引擎互不兼容、各自为政,这就使得很多游戏仅能支持一种物理引擎,这种情形非常类似于3D时代开荒初期在技术和规范上百花齐放!

这一现状有望在DX10推出之后得到改善,有了微软API的支持,无论哪种物理引擎都拥有发挥的空间,相信将会有更多的游戏加入更多的物理运算。未来,DX10 GPU将是更趋向化通用型的处理器,也就是说,原本许多交由CPU进行的3D处理会被转移到GPU上面来,因为强大的GPU比CPU更适合做这些工作,由此游戏性能会大幅提高。微软表示,DX10会开放两个SDK,分别照顾到AGEIA和Havok,其中AGEIA的PPU直接作用于SDK独立进行物理运算,在Havok引擎的调动下NVIDIA的GPU也可以动态的处理物理运算!

4、Geometry Shader技术

另外,DirectX 10还带来了一个被称为Geometry Shader的新版“Shader”,可以处理Pixel Shaders和Vertex Shaders不能完成的任务。目前DirectX的处理模式是:1.顶点数据准备,2.Vertex Shader,3.完成Vertex Shader。4.光栅化计算,5.PixelShader,6.完成PixelShader,这是一个D3D标准的处理模式,这个过程是是顺序进行的(DirectX 10之前)。因此,只能吸收和输出一个单独顶点的旧版Vertex Shaders是不能创建或者破坏三角形的。

离电影画质有多远?详谈DX10最新特效
WGF 2.0中的Geometry Shader

而新的Geometry Shader的作用就是对每个Vertex数据临近的数据进行Vertex函数处理也就是用来判定临近的,类似数据操作的点来进行计算,而这种函数处理直接关系到整个渲染模型的形状;也就是说其可以快速的把模型类似的顶点结合起来进行快速运算,虽然其操作不会象Vertex Shader那样的进行完整的操作,只是处理器单个顶点的相关函数操作,但是这种操作却可以确定整个模型的物理形状,这将大大加速处理器速度,因为其它Shader单元将不再去需要判定数据所存在的位置,而只是需要简单的为特定区域进行操作就可以了。

此外,Geometry Shader中还具备一个被称为Stream Out的技术,这种技术允许GPU可以重复利用已经计算的结果(允许继续由Vertex Shader数据来调用处理好的结果),从而减少计算。目前我们已经得知,NVIDIA即将发布的GeForce 8800GTX将拥有多达128个Stream Out单元。

说完技术,再让我们来都有哪些游戏采用了最新的DX10技术呢?毕竟,游戏画面是3D技术进步最好的体现,以下就是目前已经公布的部分支持DX10技术的游戏画面:

离电影画质有多远?详谈DX10最新特效
Alan Wake

Alan Wake,中文译名心灵杀手,是Remedy继Max Payne2之后的又一款3D射击游戏,和Max Payne英雄本色系列游戏不同,Alan Wake更注重人物恐惧心里的刻画。Alan Wake采用Remedy全新开发的图形引擎。Alan Wake是一个支持多线程运行的游戏,其中物理、渲染和数据流都有专用的线程来支持。Alan Wake的一大特性就是动态的天气,场景使用了全部的核心进行渲染以达到逼真的效果。

离电影画质有多远?详谈DX10最新特效
Crysis

Crysis,中文译名孤岛危机,是第一款露面的DX10游戏,但是它同时也是向下兼容DX9。之前大家看到的Crysis视频,是在单张7900显卡上实时渲染完成的。Crysis借助DX10统一渲染架构、借助即将到来的GPU、PPU,Crysis将创造出大量物体之间的互动,比如物体运动,开火对树叶、树枝的物理破坏。另外,Crysis当中异形占据的朝鲜半岛部分冰天雪地当中的物体,会模拟真实冰冻物体,在遭遇外力下,产生冰屑纷飞的效果。

离电影画质有多远?详谈DX10最新特效
Flight Simulator X

作为DirectX 10标准的制定者和倡导者,微软自家的游戏自然不能比别人落后。微软模拟飞行10无疑是体现该技术最后的一款作品,该可谓模拟飞行游戏历史的里程碑式的作品,它针对微软最新的Windows Vista操作系统做了优化。游戏确立了为模拟飞行游戏确立了技术标准,在画面和拟真程度上达到了顶峰。玩家可以驾乘更多的各式飞机在极为壮观而真实的天空中飞行,可以与游戏中的飞行员一起欣赏美丽的空中景色。

离电影画质有多远?详谈DX10最新特效
Hellgate-London

地狱之门——伦敦 (Hellgate: London)是一款动作角色扮演游戏,由暗黑破坏神2原班人马组成的旗舰工作室开发。这个游戏在即将发布的nVidia硬件平台上运行是有一定优化的,另一个好消息是读盘速度也十分之快。因为游戏随机生成关卡,在读盘的时候将需要计算光影效果,通常情况下这将导致很长的读盘。不过,下一代的GPU可以比现在的显卡更快地完成这个任务,环境和角色模型看起来都十分精美,然而还有无数的飞行物和法术效果,更不用说精细的光影效果。

离电影画质有多远?详谈DX10最新特效
UT2007

提起虚幻这个名字,有点年龄的老玩家一定不陌生,而采用虚幻引擎的游戏也早已在业界成为一种流行趋势。虚幻2007是一款采用EpicGames最新的UnrealEngine3次世代游戏引擎开发而成的科幻第一人称射击游戏,该游戏的最大亮点是采用了时下流行的“虚幻3”引擎,使游戏画面贴图表现出非常好的效果。

毫无疑问,DX10留给厂商的,是非常广阔的技术憧憬空间和非常大的利润市场,对于普通消费者来说,无异于是图形领域的一场视觉革命。更快的游戏速度和更好的视频回访永远是推动次世代图形芯片发展的两大动力,随着Vista的正式发布和支持DX10的新一代图形芯片的推出,我们将再次感受技术进步带来的种种非凡体验。


出处:中关村在线

没有评论: