|
| |
CineFX 4.0引擎 以不可思议的速度呈现高级视觉效果
|
| |
实现更强大的处理能力 呈现更出色的图像质量 |
| |
第四代NVIDIA® CineFX™引擎使NVIDIA GeForce™图形芯片(GPU)实现了不可思议的超炫速度。借助CineFX 4.0引擎,开发人员能够为新兴PC游戏(参见图1)和其他技术尖端的可视化应用,创建并呈现最先进、最高品质的视觉效果。
对三维可视化应用的所有要求可分为两类——性能要求和图像质量要求,而最终目标则是能够在更短的时间内完成更多的运算,并呈现尽可能最佳的图像品质。
搭载CineFX 4.0引擎的全新NVIDIA GeForce 7800 GPU采用了更先进的架构,能够加速执行三维可视化处理所必须的大多数常见运算。这样,图形应用就可以在保持最出色的图像质量的同时,实现更复杂的着色效果。这款全新设计在每一级管线都实现了创新:
重新设计的顶点着色器缩短了三角形设置(Setup)时间和执行几何处理的时间。
全新像素着色器的浮点运算能力提高了一倍,其他数学运算能力也大幅提升,吞吐量显著提高
高级纹理处理单元采用了全新硬件算法和更先进的高速缓存,可加速滤波和混合运算。 |
| |
|
©2005 NVIDIA Corporation |
|
图1 GeForce 7800图形芯片渲染的NVIDIA Luna技术演示版 |
| |
| 归功于CineFX 4.0引擎,三维可视化应用的性能和图像品质得到了全方位提升,每一帧都会带给用户更加逼真的体验。现有的应用将以令人瞠目结舌的速度运行,并且呈现出更清晰、更鲜锐的画面。编程人员可以充分利用这种先进的处理能力,制作出新的视觉效果,增加可视化应用的复杂程度,全面提升用户体验,而这一切丝毫不会降低应用性能。 |
| |
顶点着色器 |
| |
三维图形芯片的中坚力量 |
| |
| 顶点着色器是三维图形芯片的中坚力量之一。三维世界由模型构成,其中最基本的图形元素是三角形(参见图2)。三角形的每个角(即所谓顶点)均作为三维世界中的一个位置的参照点,并通过各种不同属性参数加以进一步描述。 |
| |
 |
©2005 NVIDIA Corporation |
| |
图2 NVIDIA Luna技术演示版之线框模型 |
| |
| 顶点着色器的第一级管线负责处理单独的三角形顶点。根据该顶点在三维世界中的位置,以及这个三维世界中的摄像镜头位置和光源位置,对每个顶点进行相应的处理。利用三维矩阵转换计算,该顶点的信息将被转换为摄像镜头中的三维空间位置。 |
| |
更迅速地完成三角形设置 |
| |
| 下一级管线将对转换生成的新顶点进行逐像素渲染,为此,需要通过三角形设置单元,将这些顶点分组为三角形。(参见图3) |
|
|
| |
图2 顶点着色器向三角形设置单元提供数据 |
| |
图内文字:
Vertex Shaders:顶点着色器
Triangle Setup:三角形设置
To Pixel Shaders:传输至像素着色器 |
| |
注意 : GeForce 7800 GPU拥有最多8个顶点着色器 |
| |
| 根据三角形的三个顶点,三角形设置单元通过数学运算确定该三角形的“扫描线”或光栅。在这个过程中,三角形被分割成一定数量的扫描线。随着对每条扫描线执行光栅化,也对颜色片段进行了着色处理。该算法将继续抽取信息,直至整个三角形填满完成着色的片段值(参见图4)。 |
| |
注意: 一个片段可能是一个像素,在大多数情况下,这两个术语的含义相同,可以互换。 |
| |
|
| |
图4 光栅化后的三角形 |
| |
注意: 图4中显示的光栅化模式是概念上的,并不代表GeForce 7800 GPU实际的光栅模式 |
| |
| 加速三角形设置可以提高三维管线的总吞吐量。对于包含大量几何处理或顶点处理的应用而言,如阴影渲染,这一点尤为显著。 |
| |
像素着色器 |
|
从本质上讲,像素着色是一个需要进行大量数学运算的过程;尤其是照明效果的图形处理方程式,非常复杂,需要进行大量运算。诸如折射、反光、法线化和浮凸等效果均必须进行大量不同的数学运算。 |
|
| 此外,实时模拟复杂的材质也要求图形芯片具备超强运算能力。 |
|
加速MADD运算 |
| |
| 乘法和加法是三维图形芯片常用的数学函数,也被称为乘-加(MADD)运算。在转换、照明、法线贴图运算以及许多其他运算中,都包含这种运算方式。 |
| |
| CineFX 4.0引擎加速了MADD运算,从而提高了像素着色器的总吞吐量。事实上,GeForce 7800的MADD运算能力最高可达上一代GPU的两倍。 |
| |
| 下面的浮雕贴图演示了MADD函数的重要性,接下来的小节将具体介绍最新一代NVIDIA GPU通过采用这种运算方式以及其他创新技术而实现的性能提升。 |
|
举例:浮雕贴图 |
| |
在浮雕贴图应用中,包含高度数据的法线贴图可被用于创建表现深度和高度的幻觉。在图5中,请注意茶壶的隆起处和从木盘中凸出的物体,这些对象均是采用一种被称为浮雕贴图的特殊技术而创建的。 |
| |
|
| |
图5 采用浮雕贴图技术创建的茶壶的隆起处和从木盘中凸出的物体 |
| |
| 图5中的实际模型中没有用于创建木盘或茶壶上的凸起效果的几何图形。浮雕信息是作为完全单独的纹理而保存的,在进行三角形处理时可以使用这些信息,以实现希望的效果。(参见图6和图7)通过基础纹理、浮雕贴图和场景照明的函数,计算出深度或高度。 |
| |
|
|
图6. 砖的纹理和木头的纹理 |
| |
|
|
图7. 浮雕贴图技术结合基础纹理,创建深度感 |
| |
| 为了理解更快速的数学函数所产生的影响,您首先得熟悉必须进行的数学运算。对于图5中显示的三维效果类型的计算,像素着色器使用的主要方程式包括如下代码(参见图8): |
| |
|
| |
图8 高级着色器代码举例 |
| |
这些类型的着色器创建的汇编代码如图9所示。 |
| |
|
| |
|
| |
图9 浮雕贴图着色器代码片断 |
| |
| GeForce 7800 GPU实现了速度更快的数学函数运算,从而显著提升了包含大量MADD运算的程序的性能,如图9中的程序。这种先进的NVIDIA架构兼具高速度和灵活性,支持开发人员创造出能够迅速完成渲染的更加复杂的效果。 |
| |
纹理引擎 |
| |
CineFX 4.0引擎包含一个重新设计的纹理处理引擎。可以更快速地存取纹理,开发人员也可以充分利用其中包含的各种不同的纹理像素样本尺寸。这些改进特性十分有助于提升高精度纹理应用的性能,如高动态范围(HDR)渲染等。这个最新纹理引擎实现的更先进的高速缓存设计也有助于增强各向异性过滤的性能。请注意图10中显示的虚幻引擎3实现的高动态范围效果。 |
|
|
|
图片由Epic Games公司提供 |
| |
| 图10 高动态范围效果——炫目的光亮和暗部——只有借助GeForce 7800图形芯片的64位高动态范围处理能力才可实现 |
| |
| 结合速度更快的数学函数,可以在超高性能和精确度下渲染出美轮美奂的高动态范围效果。 |
| |
其他先进特性 |
| |
全新抗锯齿模式 |
| |
| NVIDIA公司的工程师们创建了两种全新抗锯齿模式——透明自适应超采样(supersampling)和透明自适应多采样(multisampling)。两种模式均可提高抗锯齿功能的质量和性能。 |
| |
透明自适应超采样 |
| |
透明自适应超采样(Superscaler)和多采样通过抽取更多纹理像素样本,使用更多抗锯齿通道,提高了细线对象的图形质量,如菱形网、树木和植物等。
这些类型的对象通常以非常简单的多边形模型(甚或仅用一个多边形)进行渲染。最终图形的复杂程度(一簇枝叶或一丛植物)取决于多边形上的纹理贴图。常规的抗锯齿功能对于这种情形无能为力,因为植物或枝叶的边缘实际上是位于投射纹理的内部。当前的抗锯齿模式无法处理多边形内部的像素。
透明自适应超级采样方法通过识别纹理的Alpha通道中的透明或者是不透明信息来解决这个难题。即使并不位于三角形的边缘上的区域,如果存在透明度的变化也可以实现抗锯齿的效果。这样,就可呈现更平滑、更精美的图形。
图 11至图13演示了这种方法的优势。 |
| |
|
| |
图11 在其上渲染了单个空白纹理的单个多边形 |
| |
| 在图12中,请注意,这些边缘的锯齿现象。普通的抗锯齿功能无法提高使用这种纹理的图形的品质。 |
| |
|
| |
图12 在同一单个多边形上渲染包含植物的单个纹理 |
| |
图13中的例子采用了透明采样方法。请注意,在这幅图中,植物叶片非常平滑、美观。 |
| |
|
| |
图13 在同一单个多边形上渲染的相同纹理 |
| |
| 总的来讲,超级采样的执行时间非常长,以至于很少有应用采用这种方法。然而,NVIDIA CineFX 4.0引擎通过以创新方式使用这些自适应算法,可以仅对图形中部分选定区域执行超级采样。这样,就可在保持较高性能的同时,提高图形品质。 |
| |
透明自适应多级采样 |
| |
透明自适应多级采样也可提高抗锯齿质量,甚至还可提升应用性能,因为这种方法仅使用一个纹理像素样本来计算周围的子像素值。虽然透明自适应多级采样的抗锯齿质量没有超级采样方法高,但是这种方法的效率更高,能够平衡地实现更高图形品质和更高性能。
这种方法的优势如图14所示。相比于普通的超级采样/多级采用方法,自适应超级采样实现的图形显然更加细致精美。特别地,请注意树枝和草叶的细节。 |
| |
|
| |
| 图14 普通的抗锯齿(左图)与透明自适应抗锯齿实现的清晰、逼真的微小枝叶和植物(右图)之比较 |
| |
| 两种全新抗锯齿模式——透明自适应超级采样和透明自适应多级采样——均非常适用于户外环境,带有植物的场景,菱形网以及含有看起来非常细的模型的画面。 |
| |
支持新一代微软操作系统 |
| |
NVIDIA CineFX 4.0引擎支持即将上市的Microsoft® Longhorn操作系统和Microsoft Windows® Graphics Foundation 1.0标准。有了组合式桌面硬件引擎提供动力,桌面上将实现许多高级图形技术。
这些先进技术包括:
视频后期处理
桌面实时合成
无缝切换多种三维应用
加速抗锯齿纹理渲染
特殊效果和动画
所有这些特性都将带给最终用户更有价值的图形体验。通过桌面机硬件组合式引擎,仅需进行少量上下文转接,对CPU性能不会产生任何影响。 |
| |
|
|
结束语 |
| |
NVIDIA CineFX 4.0引擎将突破性图形处理技术注入了顶点着色器、像素着色器和纹理引擎等核心级特性。
通过加速三角形设置、像素着色器的重要的数学运算和纹理操纵等,这个最新引擎支持三维图形开发人员制作性能更高、画面更精美的图形应用。 |
| |
参考资料 |
| |
| Oliveira、Manuel M.、Gary Bishop和David McAllister合著:Relief Texture Mapping(《浮雕纹理贴图》)。 SIGGRAPH 2000大会会刊(国路易丝安那州新奥尔良),2000年7月23日-28日。
Policarpo、Fábio、Oliveira、Manuel M.和Comba, Joáo L. D. 合著:“Real-Time Relief Mapping on Arbitrary Polygonal Surfaces.”(《在任意多边形表面进行实时浮雕贴图》)2005年度互动三维图形和游戏研讨会(Symposium on Interactive 3D Graphics and Games)会刊,第155页至第162页。
网址:http://www.inf.ufrgs.br/~oliveira/RTM.html |
| |
注意
所有NVIDIA设计规范、参考板卡、文件、图纸、诊断信息、列表和其他文档(一并或分别称为“资料”)均“按现状”提供。NVIDIA公司不以明示、暗示、法定或其他方式对材料的非侵权性、适销性和适用于任何特定用途做出保证,并明确否认任何此类暗示保证。
我们认为所提供的信息是准确、可靠的。然而,对于由于使用该信息所造成的后果,或者由于其使用可能导致的对第三方专利权或其他权利的任何侵犯,NVIDIA公司不承担任何责任。不以暗示或其他方式授予NVIDIA公司的任何专利或专利权的任何使用许可。本出版物中述及的规范如有更改,恕不另行通知。本出版物取代并替换以前提供的所有信息。NVIDIA公司未将其产品授权用于生命支持装置或系统的重要组件,除非获得NVIDIA公司的明确书面认可。
商标
NVIDIA、NVIDIA徽标、CineFX和GeForce均为NVIDIA公司的商标。
其他公司和产品名称均为其各自所属公司的商标。
版权
© NVIDIA公司,版权所有,2005年。保留一切权利。
|
|
| |
| |