本帖最后由 ctking 于 2013-3-7 11:45 编辑
出处:http://www.xici.net/d118240402.htm 作者:neojin
2009年10月23日,微软正式发布最新一代操作系统——Windows 7。与之同时公布的还有玩家最为关注的DirectX 11应用程序接口(API)。作为DirectX 11的首款硬件产品,ATI早在Windows 7发布一个月前就已经发布了Radeon HD 5000系列产品。而NVIDIA方面由于在架构方面的大幅调整,在今年的3月27日才正式发布首款DirectX 11显卡——GeForce GTX 480。
至此,DX11显卡的大战已经箭拔弩张,在一轮接一轮的价格、产品大战前,我们今天将为大家从显卡的基本架构说起,为大家讨论一下ATI以及NVIDIA的两款顶级显卡在DX11特效方面的改进,尤其是DX11的灵魂所在——Tessellation。

Tessellation(曲面细分)是微软在DirectX 11当中加入的一项非常重要的技术,这一技术的诞生让游戏画质再次有了质的提升。不过对于Tessellation技术而言,ATI以及NVIDIA的设计思路再次出现了重大分歧,直接导致了DX11显卡在DX11游戏性能方面的大幅差距。那么究竟是哪些原因造成的呢?ATI以及NVIDIA的设计思路又差别在哪里?我们今天将为大家详细解析。
第2页:[第一章]Tessellation意义何在?
◆ DirectX 11的改进
随着Windows 7操作系统的发布,DirectX 11也随之到来,在DirectX 11当中究竟进行了哪些改进,无论是在我们之前Radeon HD 5870的评测文章还是GeForce GTX 480文章当中都已经为大家介绍过了。本文将这些新特性归纳为下表以便读者了解:

DirectX11主要新特性

Tessellator成为了DX11的重点
DirectX11大致有五点重要的改进,他们分别是:多线程处理、Shader Model 5.0、DirectComputer11、Tessellation、HDR纹理压缩。其中,除了Tessellation需要在架构方面进行较大改动外,其他方面主要都是通过指令代码等方式来实现。因此,想要辨别显卡在DX11架构方面改进的幅度,则主要归结到了Tessellation方面的改进。在我们了解ATI以及NVIDIA产品在Tessellation方面进行的架构改进前,有必要为大家详细介绍以下Tessellation究竟是一个怎样的技术。
◆ Tessellation技术解析 Tessellation(曲面细分)是一个晦涩难懂的技术词眼,下面我们将用比较易懂的语言来为读者解释一下。实际上Tessellation就是把一些粗大无序的几何模型图形分成很多更小的图形,从而实现更细致的几何模型表现。下图就是一个很简单的例子:

通过上图可以看到Tessellation能够将普通的几何模型重新拆分,将每个平面(实际上是三角形)重新细分为更多的平面,让物体看起来更加细致,更加接近现实当中的效果。Tessellation技术的加入能够大幅降低CPU资源,同时还能够让图像质量得到大幅提升。
实际上,Tessellation最早由ATI提出,并且ATI在R6xx以及R7xx产品当中已经加入了这一功能,但是限于这个技术的独有性,因此能够为这一技术提供支持的游戏厂商少之又少。而微软将这一技术重新优化,纳入了DX11当中,也为Tessellation技术的普及提供了强劲的支持。
第3页:——Tessellation工作流程解析
◆ Tessellation工作流程
DirectX 11 Tessellation的处理单元我们称之为Tessellator单元,Tessellator单元本身不具备可编程性,因此DirectX11向tesselator单元输入或者从中输出的过程是通过两个传统的管线阶段完成的:Hull Shader (HS,外壳着色器)和Domain Shader (DS,域着色器)。
 Hull Shader负责接收琐碎的图形数据和资料,而control points将会基于如何配置Tessellator来产生数据。这些琐碎的图形数据和资料会形成一个新的primitive单元(类似于顶点单元和像素单元),这种primitive单元可以将平面的一段分块处理。Control points用来定义想要得到的图形(比如说一个曲面或者其他)的图形参数变量。如果您经常用Photoshop绘图软件的话,不妨把Control points理解为PS的钢笔工具:用平面代替线的贝塞尔曲线功能。Hull Shader采用control points来决定如何安排tessellator处理数据,利用Tessellator生成大批量的、确定数量的点,然后将数据传送给Domain Shader,Domain Shader将这些点转换成3D处理中的顶点,最后GPU生成曲线以及多边形。

Tessellator只负责分块处理。Tessellator将Hull Shader基于某种参数而传送给自己的琐碎图形数据和资料分离成点,再将分离出来的一系列点发送给Domain Shader,后者将会完成这些点到图形的过程的处理。那么,编程人员就得为他们的代码编写Hull Shader程序,而不需要考虑TS的变成任务。可以说,Tessellator就是一个固定功能模块,用来处理一些基于一定参数的输入数据。

 Domain Shader将会接收由Tessellator产生出的点,并依照终点控制(control points)置换贴图将这些点形成一个合适的几何图形。Domain Shader通过运行开发者设计的DS程序来执行这些操作,这些DS程序控制这些新产生的点如何转移或者如何按照终点控制以及纹理渲染取代这些数据。处理完毕这些点之后,Domain Shader将会输出一个个顶点。我们很可能就会看到大量Domain Shader输出并直接进行光栅化,以便几何图形可以分散到屏幕上进行像素处理。
第4页:——Tessellation技术优势体现
◆ Tessellation的优势
看完前面的技术介绍,可能有朋友会问:Tessellation技术是不是真的很先进、是不是一种进步呢?我们知道,Tessellator本身是一种固定功能模块,而不具备可编程性。Tessellator的输入和输出从一定程度上讲也可以通过Hull Shader以及Domain Shader模块来操作。Geometry Shader(GS,几何着色渲染)是管线中一种可编程性模块,尽管这种管线不仅兼具Tessellation功能,而且还具备其他功能,但是GS却不能在任何一个有用的范围内执行Tessellation操作。在渲染管线中大举向可编程性进军基本上已经成为业界的前进方向,而现在我们却后退了一步,为什么会这样呢?
固定功能硬件与可编程硬件之间的争论,一直主要是性能对特性以及性能对实用性孰重孰轻的问题。起初,固定功能模块对于硬件性能的高低至关重要。随着时间的推移,人们开始认识到在绘图芯片中植入固定功能模块根本不切实际。比如说,如果开发者不能编出一套能充分挖掘硬件性能的程序的话,在这种硬件中加入再多的晶体管也是徒劳的。这就促使开发者们设法在核心架构上做文章,让这种架构不断扩展运算源,这种运算源可以被共享,而且可以被大量不同的任务采用,但是这并不意味着固定功能硬件就失去了存在的意义。
 现在我们依然面临着一个问题:除非开发者能够尽可能的挖掘硬件的潜力,否则在Tessellator中堆砌晶体管是没有用的。但是让其有意义的理由是:如果开发者可以充分利用硬件的话,ROI(投资回报比)是非常高的:这样可以轻松的从一种固定功能硬件Tessellator中获得巨大的Tessellation性能,这样做要比把必要的资源加入几何渲染单元以便获得同样的可编程Tessellation性能要来得容易。当然了,这并不意味着我们将会看到固定功能模块可以在绘图硬件中再次兴起,因为这一先进的特性如果要继续向前发展的话,这一特性的早期应用就必须以牺牲可编程性为代价。目前,绝大部分任务将会继续以灵活的编程性为最终目的,而且在不久的将来,我们可能看到Tessellator将会加入越来越多特性,直到tessellator具备完全的可编程性。
以上所有这些关于固定功能Tessellation的技术性评价并不代表我们就对Tessellator的优势漠不关心。现在让我们来了解一下Tessellator的优势。目前,美工需要做的就是为某一物体的不同LOD(Level of Detail,随着物体或近或远的移动,物体的复杂性降低或者增加)制作不同的图像,而每个LOD里通过纹理渲染的几何模拟由像素着色器负责。这样的话,对于美工和编程人员而言就有了额外的工作要做,而且会在性能方面下很多功夫。
 Tessellation是创造更多纹理细节、阴影以及平滑边缘的几何图形的最佳途径之一。而且,高级几何图形同时也需要真正的、完美的位移贴图。当前,大部分几何图形都是通过纹理渲染和某些诸如凹凸贴图、视差贴图之类的技术模拟实现的。即便是高质量几何图形,我们还是想用大量的普通贴图技术,以便可以利用光学算法,这样使最终画面出现裂缝、爆炸、山脊等效果就变得不那么难了。这是一种快速、有效的方案,而且还可以产生非常细微的图像效果,并解放像素着色器资源以供他用。在Tessellation技术的帮助下,美工便可以创造出一个极为细腻的表面图像,这种细腻的表面图像具有一个动态的LOD;将一个简单的hull shader单元以及一个移位贴图应用到domain shader单元的话,不仅可以减轻相关的工作负担,而且还可以提升画面的质量,促进性能提升。

GPU在未来的应用中将扮演更为重要的角色
如果开发者们采用Tessellation技术的话,我们可以看到非常逼真的物体效果,而且随着DX11的发布,NVIDIA以及AMD最终将会从Tessellation技术中获益。那么究竟是NVIDIA获益更多还是ATI获益更多,我们接下来看看NVIDIA以及ATI两家产品在Tessellation架构设计方面的差异就会明了。
第5页:[第二章]从架构谈起,A/N设计对比
虽然微软在DX11当中已经明确了Tessellation的执行流程,但是对于核心架构设计方面,还是需要ATI与NVIDIA方面的自行设计。ATI与NVIDIA在历代产品当中的核心架构设计上都存在不同的设计方向,此次DX11产品同样如此。
◆ ATI——架构简单,推出迅速
早在2009年9月份就已经亮相的Radeon HD 5870当中,就包含了ATI的首款DX11显示核心——Cypress(RV870,官方正式代号为Cypress)。Cypress核心可以看到两组SIMD阵列呈对称型排列,其中每组阵列当中均有800个流处理单元设计。在单一SIMD引擎当中,ATI采用的排列方式依然是RV770的设计方式。也就是说,每个SIMD阵列当中包含10组SIMD阵列,而每个SIMD阵列当中又包含16个流处理器,每个流处理器包含5个流处理单元,因此总计1600个流处理单元。两者通过相同的高速数据总线与L2 Cache相连,同时也连通到Global Data Share上进行数据共享。

RV870核心逻辑架构图
从上面的架构图可以看出,Cypress更像是两个RV770核心的合体,而对于DX11技术的升级,主要集中在Graphics Engine当中。这样的设计方式,无疑更加简单,对于ATI的研发周期来说也会大幅缩短,这也是为何ATI的DX11产品会如此之早就能发布的一个重要原因。
◆ NVIDIA——架构复杂,研发较慢 接下来再来看看NVIDIA方面。NVIDIA为了让Tessellation能够实现更好的效果,在GPU架构方面进行了大幅度的改进。从下面的架构图可以看出,GF100核心主要划分为Host Interface(主接口,负责PCI-E通讯传输,包括读取CPU指令等)、GigaThread Engine(主线程调度引擎)、4组Graphics Processing Clusters(后文简称GPC,图形处理集群,GPU的核心部分)、6组Memory Controller(显存控制器,每组显存控制器位宽为64bit,总位宽384bit)、L2 Cache(二级缓存,容量为768KB)、6组ROP单元(每组包含8个ROP,共48个)。

GF100核心架构图(非GTX480/470)
在GF100核心架构当中,我们并不会看到ATI的Cypress核心当中独立设计的Graphics Engine,那么GF100的Tessellation单元又在哪里?实际上,每组GPC当中的SM当中,NVIDIA都加入了一组PolyMorph Engine(多形体引擎)。而PolyMorph Engine则正是Tessellation的核心部分,并且,NVIDIA为了保证光栅单元的效能,在每个GPC中均设有一个光栅引擎(也就是四组PolyMorph引擎共用)。那么,实际上NVIDIA的GF100相当于拥有了一共多达16个PolyMorph Engine,虽然无法直接与ATI的Graphics Engine划等号,但是性能方面绝对要更具优势。带来的负面问题就是NVIDIA首款DX11显卡的延期。
对于Tessellation方面来说,ATI以及NVIDIA可以说拥有了两种截然相反的态度:前者更追求产品的研发速度,而后者更追求产品的性能表现。那么不同的态度带来了怎样的产品?在我们之前的两篇重量级评测当中已经为大家详细介绍过了,本文当中将会着重二者的Tessellation方面的设计进行详细介绍。
第6页:Tessellation技术详解——ATI篇
◆ 酷似双核心CPU设计
从Cypress的架构图来看,ATI在设计Cypress之初,并没有把Tessellator单元看得过于重要。因此在整个Cypress架构上,ATI遵循的宗旨更像是将两个RV770整合在一颗芯片当中,进一步提升显卡在超高分辨率当中的性能表现。而DX11仅是作为一个功能被加入到Cypress核心当中而已。
Cypress的流处理器单元从前一代产品的800个激增到1600个,而核心面积却没有大幅度增加,这不得不说是ATI在Cypress芯片上设计得当的地方。

RV870核心逻辑架构图
如果仅仅从架构图上来分析,我们似乎看到了一款双核处理器的影子,就好象两个RV770核心相对放置一样,这的确是增加性能一个最为快速的方式。但是,这样的设计也注定了Cypress不会在DX11方面有非常明显的改进。我们从下面的Graphics Engine介绍中就能了解到。
◆ Graphics Engine图形引擎
在ATI的Graphics Engine当中,包含了众多图形处理单元,而Tessellator只是其中的以部分。在Tessellator当中,内置了可编程的Hull Shader以及Domain Shader,这就是ATI提供DX11当中Tessellation技术的重要组成部分。同时,为了保证在高分辨率下得到更好的性能表现,ATI特地设计了两组Rasterizer以及Hierarchical Z单元。 
在Tessellator单元当中,ATI严格按照微软的执行程序进行架构设计,并且整个核心当中,进配备一组这样的单元进行Tessellation计算。因此,如果游戏当中遇到众多需要Tessellation计算的场景,那么这个单元就很有可能成为整个GPU系统的瓶颈。为了证实这一点,我们将会在稍后的性能测试当中为大家实验。
第7页:Tessellation技术详解——NVIDIA篇
与ATI的设计思路不同,NVIDIA在GF100上花费了大量的精力以及时间进行研发。为了加强Tessellation的性能表现,NVIDIA甚至将第一版的GF100设计产品推翻重来,为的就是设计出一款DX11性能强劲的产品,而并非在DX10产品上进行小改动就发布。
◆ GF100架构总览
从NVIDIA的首款统一架构的G80开始,到今天的GF100产品,这已经是NVIDIA第三代统一架构产品。与第一代、第二代产品的小幅改进不同的是,第三代GF100统一架构产品为了迎合DX11的特性,在整体设计方面进行了较大幅度的调整,我们可以通过下面的架构图来看出:

GF100核心架构的主要改进
在GF100核心当中,共包括4组GPC部分,每组GPC又包括四个Streaming Multiprocessors(流式多处理器阵列,简称SM阵列),而每个SM阵列当中又包含了32个Core(NVIDIA称之为CUDA Core,CUDA核心)。在每个GPC当中,NVIDIA都增加了一组全新的Rester Engine(光栅引擎)。而在每组SM当中,NVIDIA还增加了同样全新设计的PolyMorph Engine(多形体引擎,执行曲面细分的主要单元)。Rester引擎以及PolyMorph引擎实际上是NVIDIA对GF100核心架构做出的最大变化,这两个部分也是让Tessellation性能得到大幅提升的最主要原因。
◆ PolyMorph引擎
PolyMorph Engine(多形体引擎)当中包括了五个主要部分,分别为:Vertex Fetch(顶点获取)、Tessellator、Viewport Transform(视口转换)、Attribute Setup(属性设定)以及Stream Output(流输出)。

PolyMorph引擎执行步骤:
从一个全局顶点缓冲区中获取顶点,随后发送至SM,以进行顶点着色以及外壳着色。将每个顶点从物体空间转变成了世界空间(本页第一幅图片最左边的形态),而且还算出了Tessellation所需的参数(例如Tessellation系数,简单理解就是:将一个三角形重新划分为多少个三角形)。Tessellation系数(或LOD)被发送至Tessellator。
PolyMorph引擎重新在SM当中读取Tessellation系数。Tessellator将修补面(控制点网格所定义的光滑表面)分成三角形并输出许多顶点。修补(u、v)值定义了网格以及形成网格的连接方式。全新的顶点再次发送至SM,域着色器(Domain Shader,简称DS)与几何着色器(Geometry Shader,简称GS)均在这里执行。DS能够根据外壳着色器(Hull Shader,简称HS)与Tessellator的输入来运算每个顶点的最终位置(本页第一幅图片中间的形态)。在本阶段中,通常会附上一个Displacement Mapping(贴图置换)以提升修补面的细节表现。几何着色器能够执行任何后期处理、按需增加或删除顶点以及基元。
PolyMorph引擎会执行视口转换以及视角校正。
接下来就是属性设置,把后期观察口顶点属性转变成了平面方程,以进行高效的着色器评估。
将顶点“流出”至存储器,使其能够用于更多处理。
PolyMorph引擎的执行大致分为这五个阶段,并且每一个步骤完成之后,都会交由SM进行处理,处理完毕,结果将自动进PolyMorph引擎的入下一个流程处理,当五个步骤全部执行完毕,就会交给下面的Raster引擎。由于PolyMorph引擎的大幅增加,更好的避免了Core的空载现象,从而大幅提升显卡的执行效率。 第8页:[第三章]实践Tessellation性能测试
◆ 测试平台

| 测试平台配置表 |  |
| 硬件平台 | 处理器 CPU | 英特尔Core i7 965 @ 3.2GHz | 主板 Motherboard | 技嘉X58 | 内存 Memory | 金士顿 DDR3-1333 3GB(1GB×3) | 硬盘 HDD | Seagate Barracuda(希捷酷鱼) 7200.11 320GB | 显卡 VGA Card | GeForce GTX 480
Radeon HD 5870
| 声卡 Audio | 主板集成声卡 | 散热器 Cooler | 超频三 南海2 HP-1204X | 电源 Power | Cooler Master 酷冷500W | 操作系统 | 操作系统 OS | Windows 7 32bit
| 驱动程序 | 主板驱动 MB Drivers | Intel(R) X58/ICH10R 芯片组驱动程式 V9.1.0.1007
| 显卡驱动 VGA Drivers | NVIDIA ForceWare 197.55 WHQL版
ATI 催化剂 10.4 版
|
◆ 平台介绍
测试平台方面我们选择了一款技嘉X58主板,测试的CPU则选择了Intel的i7处理器,主频为3.2GHz。而测试内存方面,我们依旧搭配了三条DDR3内存(单条1GB),实际性能测试频率、时序为DDR3-1066 7-7-7-20。搭建这样的平台能够更好的体现显卡之间的性能差距,降低其它设备成为显卡性能发挥的瓶颈。
显卡方面我们选择了NVIDIA以及ATI的单核心顶级产品GeForce GTX 480以及Radeon HD 5870进行对比。
◆ 测试项目
为了能够更好的体现Tessellation方面的差距,我们此次测试全部选择了能够支持DX11的游戏以及测试DEMO,包括天堂2.0、巨石人、尘埃2、地铁2033、NVIDIA水面DEMO、NVIDIA头发DEMO以及微软DX11 DEMO。
第9页:————基准测试:天堂2.0(DX11)
/天堂2.0特点/:
Unigine引擎发布了基于其Unigine引擎的首款DirectX 11显卡测试软件——Heaven。在GTX480发布前再次将其升级,加入了全新的测试场景,并且更加广泛的利用到了DX11当中的特效,对DX11显卡的性能需求更加苛刻。
/天堂2.0设置/:
测试设置为最高画质。
/天堂2.0方法/:
游戏自带BenchMark测试程序,运行多次取平均值。 


天堂2.0是一款专为DX11显卡推出的测试程序,演示程序当中大量的应用了Tessellation效果。我们通过软件设置调节Tessellation效果为高和极限两种模式,可以看出,NVIDIA显卡在Tessellation效果提升之后的性能下降幅度大约为18%,而ATI的HD5870在同样的对比下,性能下降幅度则达到了35%。在天堂2.0这个Tessellation应用较多的场景测试当中,GTX480的架构优势明显体现了出来。 第10页:————DX11游戏测试:巨石人
/巨石人特点/:
游戏引擎开发商BitSquid和游戏开发商Fatshark,为PC游戏爱好者准备了一款用于检验GPU DX11性能的技术演示程序,名为“StoneGiant”(石巨人)。该DEMO内建对DX11及曲面细分等特性的支持,而用于商业版本的BitSquid Tech游戏引擎将支持PC、PS3和Xbox 360平台。
/巨石人设置/:
测试设置为最高画质。
/巨石人方法/:
游戏自带BenchMark测试程序,运行多次取平均值。



在巨石人的DEMO当中,通过“F2”热键玩家可以手动调节Tessellation至关闭、中等以及高三种选项,我们通过两种不同分辨率来考验两款产品的Tessellation的效能表现。通过测试可以看到,HD5870在关闭和开启至最高Tessellation效果时性能下降幅度超过了50%,而NVIDIA方面则只有25%左右的性能削减。
第11页:————DX11游戏测试:尘埃2
/尘埃2图形特点/:
尘埃2 PC版将是全球首款支持DirectX 11的赛车游戏,其使用的EGO引擎将整体部署DirectX11技术,支持图形多线程、硬件Tessellation以及SM5.0等新特性,这也成为这款游戏受到多方关注的焦点。
在引入DX11后,尘埃2的画面有了明显的提升,包括水面的镜面反射和折射,观众人群描绘,环境光遮蔽以及阴影效果等,尤其对于EGO引擎来说,动态模糊和景深效果的表现将迎来彻底的革新。
/尘埃2测试设置/:
测试了设置为最高画质,在最高画质中开启DX11效果。
/尘埃2测试方法/:
采用游戏自带BenchMark软件进行测试,运行多次取平均值。
查询尘埃2配置要求、性能指数 

《尘埃2》是一款面世较早的DX11游戏,虽然同样提供了DX11当中的Tessellation技术支持,效果应用并不很多,但仍然能够看出GTX480显卡的优势。
第12页:————DX11游戏测试:地铁2033
/地铁2033特点/:
《地铁2033》是根据俄罗斯作家迪米特.格鲁科夫斯基(Dmitriy Glukhovskiy)的同名小说改编的,游戏版本将以小说为基础架构,游戏中的大多数情节和背景都与小说无异。游戏舞台背景设置在近未来的2033年莫斯科,此时的人类世界面临着大面积的核泄漏事故所带来的核污染危机,整个世界都笼罩在核污染的阴霾中。
/地铁2033设置/:
测试设置为最高画质。
/地铁2033方法/:
采用游戏过场动画的方法进行测试,测试中采用同一时间段,借助Fraps进行多次截取,最后取平均值。



前不久上市的《地铁2033》游戏当中,应用到了更多的DX11特效,并且在游戏设置当中还单独提供了Tessellation效果的开启以及关闭,我们通过该选项对两款显卡的Tessellation性能进行测试。ATI显卡再次暴露出了Tessellation性能表现不佳的状况,在开启以及关闭Tessellation效果时,性能差距达到了15%,而NVIDIA产品则仅有6%的性能差距。
第13页:————DEMO测试:微软DX11 Demo
/微软DX11 Demo特点/:
作为DirectX11标准的制订者,微软近期也发布了针对开发人员的DirectX11 SDK开发包,其中包括了很多DirectX11的应用方案和演示Demo,下面我们就来通过微软的技术Demo来展示一些DirectX11的技术特性,而展示的主要方面就是DirecrX11最关键的技术Tessellation。
/微软DX11 Demo设置/:
测试设置为默认画质。
/微软DX11 Demo方法/:
游戏自带DEMO程序,使用Fraps进行辅助测试,运行多次取平均值。

◆ Catmull-Clark Subdivision Demo截图展示
该Demo同样主要考察Tessellation技术,渲染的主体是人物,而枪械不是Tessellation渲染的物体。


在这个微软的Tessellation测试当中,几乎全部测试均针对Tessellation进行设计,因此能够最为直观的考验显卡的Tessellation性能表现。通过测试可以看到,NVIDIA显卡的性能领先了竞争对手将近9倍。
第14页:————DEMO测试:超现实水面地形
/超现实水面特点/:
Demo由NVIDIA开发,该Demo应用了Tessellation(曲面细分)、Displacement mapping(置换贴图/位移映射)等技术构建了海洋上的一片小岛。投射到游戏中,该Demo主要实现的是海洋、水面及自然地形环境等的渲染。在Demo中,超逼真的海水和地形设计是展示的主要方面,细致的地形和微微泛起波浪的水面构建了几乎真实的场景环境。
/超现实水面设置/:
测试设置为默认设置,Tessellation见测试成绩表格。
/超现实水面方法/:
DEMO自带录像,使用Fraps进行辅助测试。 


我们通过该演示DEMO当中的Tessellation选项,分别调节为0(关闭)、50(中等)以及100(最高)三种不同效果,来考量显卡在Tessellation方面的表现。无论是NVIDIA还是ATI的产品,在Tessellation负载大幅增加的情况下,均会出现一定的性能下降。不过HD5870的性能下降幅度显然非常巨大,差距达到了10倍左右,而NVIDIA产品则仅有一倍差距。
第15页:————DEMO测试:超现实头发效果
/超现实头发DEMO特点/:
Demo由NVIDIA开发,该Demo主要应用了Tessellation(曲面细分)技术构建了一个简单的人体头发模型。投射到游戏中,该Demo主要实现的是人物的头发,乃至衣物、飘扬的旗帜等的渲染。该Demo除了一个简单的人物上半身模型、贴图和光照外,主体展示的就是人物的头发,随风飘动的头发非常写实。
/超现实头发DEMO设置/:
测试设置为默认画质,Tessellation设置见测试表格。
/超现实头发DEMO方法/:
DEMO自带录像,使用Fraps进行辅助测试,运行多次取平均值。


在超现实头发DEMO当中,再次出现了前一个DEMO当中出现的情况——ATI显卡在关闭Tessellation后略微领先对手,而在开启Tessellation之后则出现性能大幅下降,被对手反超的情况。
第16页:————测试成绩总表
为了让大家更方便的了解在Tessellation测试当中的成绩表现,我们将此次测试的测试成绩汇总如下表:

总性能表现来看,GeForce GTX 480在所有测试项目当中的Tessellation效果开启更高效果之后,均会大幅领先竞争对手Radeon HD 5870。从这一规律来看,显然是架构方面的优势,让GTX480显卡在Tessellation方面有了更好的表现。
第17页:[第四章]未来发展趋势DX11见分晓
通过前面的几个Tessellation专项性能测试来看,当Tessellation特效开启的越高,ATI显卡方面的性能下降幅度就会越明显,而NVIDAI方面虽然同样有性能下降,但是下降幅度显然要小很多。
我们举个例子大家就不难理解这其中的原由了。ATI的以及NVIDIA都好比一个客运公司,在ATI的运输公司当中,拥有一辆Cypress大巴车,能够同时承载100人,但只有一个门供乘客上车;而NVIDIA方面拥有一辆名为GF100的大巴车,承载能力与ATI的Cypress相同,但是拥有16个车门供乘客上车。那么如果同样需要运送1000人,很有可能NVIDIA的GF100大巴车已经运送完毕,但是Cypress大巴车很有可能连第一批乘客都没有有上完,因为Cypress大巴车的上车门仅有一个,乘客上车需要排很久的队伍,影响了ATI客运公司的运送速度。
显卡当中同样如此,ATI在Cypress当中仅设计了一组Tesselator单元,就会造成显卡运算当中Tessellation性能的滞后,以致整个显卡的运算速度遭到拖累。而NVIDIA方面虽然延长了产品研发周期,但是通过更好的性能表现,避免了这一状况的发生。

微软势必会为Tessellation的推广带来很大帮助
如果以短期目光来看,ATI的这种做法确实拥有较为不错的效果,毕竟目前DX11游戏当中的Tessellation效果应用并不算非常广泛。但是如果从长远的角度来考虑,NVIDIA的产品应该在真正意义的DX11应用中会具有更好的性能表现,它能够满足用户更长一段时间里的应用需求。

Tessellation应用广泛的《巨石人》游戏DEMO
我们有理由相信,伴随着微软的DX11技术推广,在未来的游戏当中,DX11以及Tessellation将会越来越多的被应用到游戏当中。而届时,一块真正意义上的DX11显卡才能够让玩家获得更流畅的DX11效果。那么真正意义上的的DX11显卡究竟是什么样的?相信我们的文章已经说清楚了,这也是未来显卡发展的必然方向。 |