PCEVA,PC绝对领域,探寻真正的电脑知识
  • 内容展现
  • 最新评论
最强GTX580君临:微星N580GTX Lightning XE测试
2011-6-29 17:35| 发布者: royalk| 查看: 22590| 评论: 0
摘要: 我们知道GF100(GTX480)在发布初期让人失望过很多次,从最初的多次跳票到最后无法完成全规格发布,虽然NVIDIA已经不是第一次干这事,但 这次的原因不能完全归咎于台积电的良品率,更重要的是NVIDIA对GF100的设计本 ...
Tessellation(曲面细分)技术介绍

如果说DX10的关键词是Shader(统一渲染架构),那么DX11的关键词就是Tessellation(曲面细分)。Tessellation其实 最早是由AMD(ATI)提出,早在R600图形核心中就已经集成了Tessellator单元,但是经过多年的沉寂之后终于在DX11的时候被微软采 用,并开始在DX11的3D程序中普及开来。

如果说“曲面细分”这个概念大家难以理解,那么我们可以从一道简单的数学几何题目说起。首先大家要知道,曲线、曲面的参数都属于无理数,例如圆周率π,在 计算机的二进制中,它们不可能作为常量来使用,但是我们可以通过使用有理数与人为定义的一些算法来算出这些无理数的近似值。计算机对图形的模拟,是通过坐 标(点)与坐标之间的连线实现的,同样道理我们对坐标值也只能使用有理数。看下图,首先是一个等边三角形,然后再来看正方形、正六边形、正N边形……当我 们看到边数越多的时候,图形的形状就越趋近于一个圆,但是不可能模拟出一个完美的圆,因为它可以看作是一个N=无穷大的正N边形。并且,只要移动这些顶 点,我们就可以把这个正N边形变化成任意的形状,当顶点数越多时,能组合成不规则形状的形式也就越多,但是也都是仅限于有理数的范围内。

当然,上边提到的是二维的概念,点和线段组成图形。在三维模型中,道理是类似的,点和面组成体。只不过我们的单位由点和线段,变成了构成三维物体的点和多 边形,当单位面积内多边形的数目越多时,我们就可以通过移动各个顶点组合出更多的三维模型。也就是说,只要我们有足够多的多边形,就可以模拟出一个无限趋 近于完美的曲面。Tessellation(曲面细分)就是要去完成这个任务。

三维图形模拟技术通过这么多年的发展,根本目标始终只有一个,并且没有改变过,那就是将3D模型模拟得更加真实。而曲面细分的采用,让我们朝着这个目标迈 出了一大步。当多边形的边数达到100(Photoshop多边形作图的上限)时,在图形不太大时,我们可以看到这个正100边形和圆已经毫无区别。也就 是说,在有限的图形分辨率与人眼可识别的范围之外,曲面细分只要规模足够大,理论上是可以“完美”模拟3D真实场景的。

但是,采用大规模的曲面细分技术无疑是对计算量的几何式增长,如果采用CPU来做这件事情,不仅会占用大量的系统资源,还会使得CPU负担过重,造成计算 机整体效能下降。不过幸好我们有比CPU更强大的GPU助阵,只要开发一种适用于GPU的算法(硬件加速,其实和3D加速是前者包含后者的关系),就可以 真正实现高效率的Tessellation了,DX11和OpenGL刚好为我们提供了GPU硬件加速的API(包括算法与接口),加上支持DX11的 GPU硬件,我们就可以直接开发和应用Tessellation技术了。

Unigine引擎是DX11早期Tessellation应用的典范,Unigine Heaven Benchmark相信大家已经不陌生,它支持DX9、DX10和DX11多种模式。在 DX11模式下,我们可以选择Tessellation的等级:Disabled(关闭)、Moderate(中等)、Normal(标准)和 Extreme(极致),我们先来看看之前提到的多边形数量的差别。
我们可以在Unigine Heaven中按F2显示这些多边形模型,这是关闭Tessellation时的多边形数量与密集程度:

这是Tessellation设为Extreme时的多边形数量与密集程度:

我们可以看到应用了曲面细分技术之后,多边形的数量增加了许多倍,Unigine引擎采用三角形作为单位多边形,除了第一个三角形需要三个坐标点之外,每增加一个三角形,就会至少增加一个顶点坐标,这是最快速的算法,并且,由许多三角形组成了任意的不规则多边形。

我们来看一张全景照,当采用Tessellation之后,楼梯的台阶形态才得以呈现出来,并且石头上凹凸感也更加明显。关闭Tessellation之 后,台阶的模型变成了滑梯,石头的模型也变成了磨光的板子,剩下的阴影效果只是二维的贴图而已。这些差别都是没有曲面细分的DX10以前无法实现的真实感。

自从GF100开始,Tessellation就一直是N卡的强项,HD5000系列的Tessellation计算能力相当弱,到了HD6000时有一 定的改进,但是依然不及GF110的512个CUDA核心。在大量的曲面细分计算中,512个CUDA核心发挥了出色的作用,使得N580GTX Lightning XE在Tessellation开到Extreme时依然保留了25FPS以上的运行速度,大约领先N480GTX Lightning有20%,而N480GTX Lightning也借助驱动的改进,在275.33驱动中效能比258.96稍微高一些。

收藏 邀请
0
本文版权归 PCEVA,PC绝对领域,探寻真正的电脑知识 原作者所有 转载请注明出处

最新评论

热门评论
    热门评论
      返回顶部