代号NV30!nVIDIA的终极武器GeForc
相信每个关注计算机硬件发展的朋友都会有所感觉,2002年对于图形芯片领域来说颇具特殊意义,与相对沉寂的2001年相比,今年各显示芯片厂商都争先恐后的发布新产品,甚至包括一些很久没有动作的老牌厂商。nVIDIA的GeForce4系列算是首开纪录,它虽不算是全新的架构,但其性能仍然足以延续nVIDIA在图形芯片领域的领导地位,即使是一些后续问世的竞争产品也无法动摇其优势。真正的威胁来自nVIDIA的老对手ATi,7月发布的Radeon 9700 Pro凭借全新的架构设计、强大的性能表现获得了各界一致好评,也让他在与nVIDIA的竞争中暂时占据了领先地位。
神秘的NV30——GeForce FX终于真容展现
面对竞争对手的猛攻,nVIDIA当然会全力反击,关于新一代GeForce图形芯片的消息一直就没有停止过,全球都在等待nVIDIA的新品发布,特别是那些nVIDIA的支持者更是颇为焦虑。随着时间的推移,一系列的消息陆续传来,其中包括了nVIDIA将在今年于美国拉斯维加斯举行的Comdex Fall 2002大会上发布第5代GeForce图形芯片,这一点从nVIDIA正式宣布11月18日在美国召开新品发布会得到了证实。大家早已知道新芯片的核心代号是NV30,所以都在猜测它的正式名称以及到底拥有什么样的创新架构和具体的性能表现。随着正式发布时间的来临,一切谜底终于揭晓,nVIDIA今天如期宣布了它具有革命意义的全新图形芯片,正式的名称是——GeForce FX!
银色的GeForce FX GPU
看看GeForce FX反面那密布的针脚
对于GeForce FX这一名称,可能不少朋友已经从最近泄漏出的消息中听说了,现在算是得到了nVIDIA的官方证实,其中的“FX”应该是来源于其采用的“CineFX”引擎。我们之前曾从nVIDIA内部得到消息说,鉴于NV30芯片的创新性,nVIDIA决定不再按以前的惯例把它命名为GeForce 5,还透露新的名称会和被nVIDIA收购的3dfx有一定关系,当时大家还猜测了一番,现在终于清楚是什么意思了
因为GeForce FX芯片复杂度极高,设计、测试以及生产的难度都很大,所以nVIDIA在它身上投入了大量的资金、人力和时间,据称开发费用达到了4亿美元,由几个设计团队合作完成,总共大约有300个工程师参与其中,而开发时间就不好说了,考虑到GeForce FX才是GeForce 3之后的真正换代产品,个人猜测很可能在两年前,也就是GeForce 3基本开发完成时就开始了。
从这块GeForce FX的公版显卡看,其PCB的大小和GeForce4 Ti4600差不多,布局也颇有相似之处。GeForce4 Ti4600问世时,就有说法称其大型PCB的设计是nVIDIA借鉴了3dfx的Voodoo 5而来的,现在GeForce FX公版显卡就更接近了,请注意它也采用了外接电源供电的设计,而这正是当年Voodoo 5的招牌特征之一。大家应该都知道,ATi的Radeon 9700 Pro也采用了外接电源的供电方式,看来随着新一代高性能显卡的问世,它们为了保持工作的稳定性对供电提出更高的要求,外接电源方案好像一下子成了不约而同的非常好的选择。
看看GeForce FX公版显卡这夸张的散热系统
采用nVIDIA专利的动态热辐射散热技术,风扇转速受主芯片温度控制
和现在的GeForce系列显卡相同,GeForce FX公版显卡同样提供了由nVIEW技术支持的双头显示功能,其中的DVI数字输出仍由板载的Silicon Image公司的DVI编码芯片来提供,它同时也搭载了飞利浦的SAA7114芯片,负责实现视频输入/输出(VIVO)功能;由此看来,应该是考虑到现在的GeForce FX结构已经很复杂了,所以nVIDIA并未在这些方面增加它的集成度。<
GeForceFX芯片包含有1亿2千5百万个晶体管,其数量是Intel Pentium4处理器的3倍,与1亿7百万个晶体管的Radeon9700 Pro相比倒是还差的不算太多。GeForceFX芯片采用了0.13微米的铜互联生产工艺,芯片工作频率达到了500MHz,未来随着工艺的进一步成熟还能进一步提高,其三角形生成率达到了3亿5千万个/秒,像素填充率达到了40亿/秒,每秒可执行160亿次反锯齿采样。
一块块GeForceFX核心就是从这种晶元上切割下来的
GeForce FX芯片具有8条并行的渲染流水线,每一渲染流水线具备1个材质处理单元,其每个时钟周期可以渲染8个像素,以满足游戏和应用程序为获得高超的实时图像表现而对材质处理能力提出的高要求。它可以让用户在高分辨率下快速的执行现有的游戏,并成为运行未来游戏的理想平台。
在显存的搭配方面,GeForceFX采用了128bit的DDRII显存,运行频率达到了1GHz(实际运行频率为500MHz),其显存带宽为16GB/秒,nVIDIA将采取新的带宽优化技术来提高显存带宽的使用效率。与Radeon 9700 Pro采用256bit DDR显存的方案相比,GeForceFX的128bit显存位宽低了不少,nVIDIA通过使用DDRII显存和提高显存运行频率来弥补这一点,但其最终的显存带宽仍比Radeon 9700 Pro的19.8GB/秒要低一些。 <
GeForce FX 芯片具备nVIDIA称之为“CineFX”的引擎架构,它可以提供较好的视觉效果,并实现与OpenGL、DirectX 9.0的Pixel Shader 2.0+与Vertex Shader 2.0+ 全兼容的实时渲染。作为nVIDIA新一代的图形芯片,GeForceFX试图通过优异的3D 图形性能为消费类显卡领域提供电影级的视觉效果。
通过使用名为“Shaders”的图形程序,nVIDIA的CineFX架构可以让创作者更加灵活轻松的利用三维数字创作软件来实现和转变他们作品的视觉效果。最终我们可以借助硬件级别的Shaders支持,简化的Shaders程序,并且通过基于nVIDIA的GeForce FX芯片实现更多的特别的图象效果。在开发显示芯片的同时,nVIDIA也同时提供给程序员Cg高级图形语言,以及可供选择的程序环境。
通过nVIDIA的CineFX架构的支持,所有的编程精度都被推进到一个更高的水平。nVIDIA的CineFX架构的图形渲染流水线内置128-bit颜色精度,其中红,绿,蓝以及Alpha值各分配32bit。何为具有128-bit彩色呢?也就是说每个基本颜色通道都有数以百万计的颜色可供选择,而以往的32-bit彩色则只有几百个不同颜色的表现能力。
对于电影级别的三维图形的创作来说128-bit彩色是非常必须的,并且GeForce FX 的处理能力可以保证整个场景的实时流畅渲染,在像CG这样的高水平编程语言配合下,开发者可以更容易的利用好GeForce FX GPU的能力,使之成为非常好的的开发平台以及实际游戏中的理想运行平台。<
借助CineFX引擎的推动,nVIDIA的GeForce FX 将传统的简单渲染转移到更高级的Pixel Shading操作中。Shader的编程能力被推进到新的高度,并且新的硬件体系也进一步加速了Pixel Shader以及Vertex Shader的执行速度。以前在应用Shader的地方存在的许多编程障碍将会随着GeForce FX 的到来消除,GeForce FX 支持更长的渲染效果程序,并且具有分支预测能力以更好的优化程序的运行。
GeForce4 Ti 和GeForce FX 比较
nVIDIA的CineFX架构完全符合OpenGL以及DircetX9.0标准,这些API程序将使程序员可以用到更多更新的开发工具,下面是DirectX 9.0的几个崭新的特性。
Pixel Shader 2.0:DirectX9.0具备完全可编程的Pixel Shading架构。
PIXEL SHADER 2.0+
Vertex Shader 2.0:DirectX 9.0通过增加Vertex程序的长度和灵活性,显著的提高了早前的DirectX Vertex Shader的性能。
VERTEX SHADER 2.0+
高精度浮点颜色:DirectX 9.0突破了过去限制PC图形图象质量的数学上的精度障碍,它的每条渲染流水线都升级为128-bit浮点颜色。
CineFX - VERY HIGH COLOR PRECISION
为了充分利用这些DircetX9.0的新特点,nVIDIA为程序开发者准备了Cg开发者工具套件。当开发者结合nVIDIA的Cg开发者工具套件以及nVIDIA的GeForce FX图形核心的时候,开发者将能可以营造出惊人的视觉效果。<
NVIDIA的CinFX架构中引入对FP16以及FP32格式的支持,给开发者更大的灵活性去创作高质量的图形效果。最后呈现再我们眼前的是最棒的图象质量,整个渲染流水线中,所有运算均采用128-bit真彩色处理。16-bit格式将提供在图象质量和性能之间的非常好的平衡度。实际上,这个格式已经可以精确表现当今优异的专业创作以及电影效果。开发者可在每一个Shader程序之间选择最恰当的表现颜色,自由相当的灵活,这样可以达到一个非常好的的尺度。
上面的图象对比除了高精度以及低精度时的不同画面效果,注意鼻子附近的材质变化。
GeForce FX拥有nVIDIA的Intellisample技术,它在业界第一个实现了同时进行Z压缩和色彩压缩,并进行反锯齿处理,这样可以在基本不损失性能的前提下实现真实的色彩以及平滑的边缘效果。在提高显存带宽的利用率方面,nVIDIA为其提供了改进过的第二代光速显存架构,进一步增强了这方面的效率。另外,GeForce FX当然也支持AGP 8X 技术,以便利用上更大的传输带宽来实现与系统主内存之间更高效的顶点和材质数据交换。
GeForce FX 与nVIDIA上一代GPU的主要特性比较
nVIDIA那成熟完善的驱动一直受到各界的赞誉,很多用户选择nVIDIA产品的原因一方面也是冲着其优良的驱动而来的。从雷管系列给人留下非常深刻的印象,nVIDIA对驱动的开发一直也是相当的重视,公司内部每天都有驱动更新,而且每隔一段时间就会有一次驱动程序大的架构升级。nVIDIA的GeForce FX驱动程序就依托于雷管40架构,以下是它的几个重要的特性。
nVIDIA nView多屏幕显示技术:从GeForce4 Ti以及GeForce4 MX开始,nVIDIA就开始应用nView多屏显示技术,并且nView还紧密结合了一系列的桌面管理工具。
nVIDIA DVC数字明亮控制技术:增加了方便的调节屏幕色彩和亮度的控制功能,可使文本和图象显示更加清晰明亮。
nVIDIA VMR视频混和补偿软件解决方案:通过3D图形引擎来实现高品质的视频质量和动态视频流回放。
大家也对nVIDIA的Unified Driver Architecture(UDA)“统一驱动体系”很熟悉了,一个驱动就能适用于所有的nVIDIA 芯片确实很方便,GeForce FX芯片凭借这一良好传统可以成为理想的开发平台,让开发者迅速有效的进行内容创作,以便赋予游戏和应用程序专业品质的实际效果、良好的运行效率以及优秀的硬件兼容性。<
nVIDIA在发布最新的GeForce FX的时候,也给我们带来了CineFX Shaders技术,虽然新的显示芯片产品越来越复杂,开发的难度以及成本越来越高,nVIDIA依然在新产品推出上努力实践自己的承诺,并且也在产品的架构上引入新元素。它在维持自己领先地位的同时,也在悄悄改变着图形处理的面貌。
nVIDIA介绍说,最新的CineFX Shaders技术能够提供实现电影级别惊人视觉效果的编程能力,更让人惊异的是,为了实现电影级别渲染,GeForceFX不惜代价首次提供了128位的颜色表示以及运算能力,配合GeForceFX GPU,nVIDIA宣称让桌面领域图像渲染第一次达到了实时的电影级别渲染水准,这个进步也让图形工业从单纯的注重像素填充率转移到成熟的像素效果实现。
GPU的可编程自由度也是CineFX所要实现的目标而有所加强,甚至在颜色表现方面也是如此,拥有了更大的自由调整空间。虽然最大支持128位色,CineFX架构允许在一个程序内,实现对其他颜色表示形式的切换,从而在能够实现效果水准的情况下,达到比较优化的编程代码。CineFX架构在支持VertexShader特性方面更是不遗力,它能够支持达到64K长的指令集合,从而实现更多的效果。即便在代码流控制方面,nVIDIA在CineFX上依然考虑周全,考虑到处理器效率受代码流影响巨大,不恰当的代码流会浪费处理器的巨大的潜在处理能力(这也是开发处理器普遍遇到的问题),与一些成熟处理器一样,CineFX架构提供了动态分支与循环控制,降低了分支与循环损失,提高了效率,使得CineFX向更为成熟的产品迈进了一大步。
当然如果这一切是以软件开发人员巨大的编程时间消耗作为代价的话,CineFX架构也将会由于过复杂的特性失去应该拥有的风采,nVIDIA的聪明之处就在于,CineFX从来就是为支持nVIDIA的最新Cg图像编程语言而设,与Cg配合可以缩短实现特殊效果需要的开发时间,让一些目前少见的特殊效果大众化提供了可能,本身相对的复杂与编写应用程序的简单化赢得了我们不少喝彩,“简单就是好”的哲学再一次得到体现。<
提供对FP16位(FP——Floating Point浮点)以及FP32颜色表示的支持,也是CineFX逼近电影渲染水准的最重要一环,单个的数字自然无法让人留下深刻印象,但如果R、G、B以及Alpha通道都是使用这样的颜色表现精度,结果会是什么呢?4者的结合,128位浮点的确让人有点吃惊。但是如果空有强大的支持能力,却没有足够的运行速度的话,一切只是纸上谈兵。
看出来了吗?左图FP16模式的裤子和鞋的材质表现出现了异常
CineFX的进步在于,除了能够提供对128位色的支持能力,还能够给开发人员以足够的灵活度来实现想要实现的效果,选择FP32模式能够提供更高的图像品质,以及为图像处理流水线和PixelShaders提供128位的处理精度;选择FP16虽然在图像精度上有所欠缺,但是能够在图像品质以及处理速度方面获得一定的平衡。实际上,FP16的表示形式与FP32一样,与Industrial Light & Magic和Pixar Animation Studios用在电影以及特殊效果方面的色彩表示一样,因此,只要软件支持,GeForceFX芯片具有超过传统特技电影品质的潜力。当然,这一切都是基于芯片内部的颜色计算精度,最后的输出抖动生成32位色,多余的颜色表示精度的意义在于能够在模式转换方面有所损失后依然保持足够的精度,从而保证最后输出画面的品质。
由于支持两种格式,开发人员在一个Shader程序内,具有在这两种表示模式中选择的自由,能够为相应的程序和想要表现的效果选择合适的表现以及计算形式。比如,在查找高分辨率材质的时候,使用FP32形式才比较合适,特别是大于1024x1024的材质,每个材质的坐标增加了10位尾数,开发人员必须通过FP32形式,才能够访问所有的材质象素。其他的则可以通过FP16表示,以提高在处理类似材质的速度。<
开发人员能够通过CineFX架构具有的处理能力以及灵活性,能够通过简单的编程,让GeForceFX GPU实现更多效果。在顶点处理方面,CineFX架构得到大幅改进,使用基于数据的分支预测以及更多指令、寄存器与常量,突破了目前Vertex Shader程序代码长度限制,从128条指令扩展到了能够最长支持64K条指令,丰富了GPU所能够实现的效果。它具有更为强大的代码流控制能力,提供动态分支预测与循环控制,能够顺向以及逆向改变代码流。增加了对Call以及Return指令的支持,使得VertexShader的行为表象更趋近一个完善的处理器,也具备了提前终止正在运行的程序的能力。
考虑到模块执行效率,为单模块增加了条件代码以及写掩码,能够提高预测分支的精确度以及节省预测分支的时间。同时也增加了不少新的包括分支指令BRA、高精度的三角形函数(COS、SIN)以及高精度的指数以及对数函数运算指令,把这些常用运算专门化,提高常用运算处理速度。
随着运算能力的增强,也提高了CineFX架构的编程灵活度,矩阵调色皮肤贴图是个可以证实这个具有高度柔性编程强大能力的简单事实。在DX8提供的编程环境中,角色动画需要编写多个Shader,其中的一个用于所使用的皮肤贴图处理。如果一个模型使用了能够被一到四根骨骼所影响的顶点,传统的编程模式需要编写四个独立的Shader,其中一个需要用于专门处理骨骼系统的几种组合。如果要在DX8.0中实现这个效果,整个模型必须分成使用相同骨骼系统的多个多边形段,每个段的骨骼系统的渲染必须在同一时间内完成,当然,开发人员也可以选择使用四个骨骼系统Shader,结果会简单一些,但是效率会大大降低。
虽然新近的API降低了这方面的编程难度,只需要编写一个支持使用四根骨骼的系统Shader,就能够达到目标。但是由于最新的API只能支持非常有限的分支预测水准,只能对每个对象进行操作,这依然意味着需要渲染的模型还是要分成几个模块,并且分别渲染。CineFX架构更进一步,由于对分支以及循环实现了完全是数据相关形式,使得编程的方式更为直接与简单。并且,由于Shader可以针对单个顶点进行分支,也就是说完全将顶点对象化,不需要对要渲染模型进行分割,能够提高运算速度,也提高了开发人员的开发速度。
CineFX顶点处理模式还增加了对最多256个向量常量的支持,寄存器也从以前的96个增加到256个QW(Quad Words四字)的水准,使得CineFX架构能够处理更多的矩阵调色皮肤贴图的骨骼系统,同时也能够容纳更多的光源。此外,鉴于生成的代码大量增长,临时寄存器的数量也得到增长,从以前架构的12个增加到目前的16个。不仅如此,独立处理循环运算的能力也是大大提高,CineFX能够在一个Shader程序内完全实现对数据相关的单独循环与最大64个分支预测的支持,能够轻松处理像以前循环处理所有光源处理然后切换到适当的光源形式这样繁重的处理任务。
如果以上所说只不过是在处理的量上有所增长的话,那么新加入的一些指令并由此导致的处理能力增长,让顶点处理又如同当年VertexShader推出一样拥有了质的提高。CineFX架构提供了前文已经提到的单模块条件码以及写掩码、Call与Return指令以及对动态和静态代码流循环与分支控制,进一步提高了GPU的处理效率。其中单模块条件代码与数据相关的分支预测关系密切,也是这种类型分支预测的运行机制,单模块条件代码的提供能够在提高处理性能的同时还能够保持条件赋值代码的简洁性。Call/Return指令的提供同样基于提高分支预测准确率的考虑,CineFX架构能够实现完善的Call/Return机制,最大能够支持4重调用栈。至于对动态/静态代码流循环与分支控制更是与提高CineFX处理效率直接相关,从理论上说,能够大大利用处理器在处理循环以及分支预测失败时候导致的资源浪费,与片面从提高频率达到提高性能的考虑,CineFX无疑是大大进步,解决的办法也聪明了不少。
从以上的叙述,我们可以很明显地感觉到,在循环以及分支预测方面,是GPU继续发展的一个难点,并且随着处理器频率提高,处理的任务更为复杂,特别是拥有众多的角色动画,需要众多的骨骼系统处理以及拥有十分复杂的自然光这种需要很多循环才能够实现的应用,从理论上说,NV30的CineFX架构的确像他们宣称的一样,具备了达到电影水准的处理能力的潜质。当然,如果一切依然受平台限制而无法达到理论水准,自当别论。
不管怎么说,从得到的材料判断,CineFX架构依然是引入VertexShader以来的又一大创新,如果说GeForce3的效果器引擎增加了编程难度的话,CineFX则是在提高性能的同时,通过更为灵活的控制方,让特殊效果能够出现在复杂的场景中的同时还能够使用更为简单的编程模式,这就是CineFX所能带来的最大进步。我们并不是开发人员,或者从另外一个角度,这似乎与消费者无关,错误就恰恰在此,更为简易的编程模式才会让开发人员去利用CineFX架构,而不是凭空的硬件浪费。此后不久,像一些测试软件中出现的场景将会呈现在用户面前,那种空有强大的硬件支持能力而无实质的应用软件支持、购买了具有最新技术的显卡只有到测试中才有用的怪现象也将随之烟消云散,到时候我们可能更加能够体会这一番话的含义。<
如果说VertexShader能够创造更具有亲和力角色的话,那么PixelShader则是美化游戏场景以及特殊效果不可或缺的利器。在CineFX发布之后,我们更为关注PixelShader,特别是nVIDIA使用了128位浮点进行运算,尽管同时兼容我们目前的色彩表示方式,我们也不得不惊叹nVIDIA的创举,PixelShader所扮演的角色也由此更为耀眼。正如nVIDIA自己宣称,目前关注像素填充率的做法已经成为过去,我们更应该注意PixelShader能够创造的惊人效果。
在这个宣言的背后,有nVIDIA更为强悍的架构做后盾。CineFX的出现也改变了PixelShader的地位,让PixelShader成了图形生成流水线最为重要的可编程模块之一,扩展了开发人员控制像素创造效果的能力,提供了一个相对自由的平台,在CineFX的架构上,开发人员对PixelShader的操控能够得到如同在GeForce4上对VertexShader操控一样,更令人吃惊的是,这个架构超越了单纯像素领域的控制,毫无疑问,如果开发人员充分利用这个特性,像一些难以实现的比如流体控制将变得更加真实。
此图是单通道PixelShader实现的效果
通过CineFX架构,开发人员能够通过单通道Shader程序实现几种效果的融合。在此之前,只有多个双向反射分散功能(multiple bidirectional reflectance distributionfunction-BRDF)Shader配合使用才能具备这样的实现能力,也必须综合使用掩码材质或者一系列的IF判断语句。上图展示了通过单通道Shader实现的将BRDF所有关键功能当作多重材质的做法,当然,对Shader的要求也得到提高,单通道的Shader需要在一个简略的能够高速执行的模块内集成散射、透射以及环境光效支持能力,在让编程简单了的同时,也让硬件结构复杂化了。
如果这还让人吃惊的话,那么大大扩展像素操作数目的确令人诧异,CineFX架构能够提供高达1024像素的同时处理能力,具备单独模块柔和能力以及条件写掩码能力;拥有任意材质过滤以及一些其他高级指令。<
由于拥有以上特性,CineFX的像素处理能力由此得到大大增强。CineFX支持在单个PixelShader程序内最大16个材质贴图的导入,并且它们可以任意组合,并不存在相互关联的问题,比如它们可以是凹凸贴图、光泽/镜面贴图、环境贴图、阴影贴图、反射率贴图等等,使得实现效果的可组合灵活度大大增强。不仅如此,在单个PixelShader程序内,最大能够支持1024条材质指令,突破了以前单独材质贴图以及相应数量材质导入的数量限制,它能够支持16个单独材质贴图,使得通过多材质实现的新效果的实现成为可能。这些特性包括:软阴影、帧缓存后期处理效果、复杂滤镜以及查找表。
更令人欣慰的是,由于硬件本身的强化,实现以上功能并不需要太费脑筋,软阴影可以通阴影贴图中任意数量的采样获得过滤的阴影效果。帧缓存后期处理效果则更加有趣,模糊、空洞、红椿木效果和绘画效果之类非光线渲染效果能够由于硬件的支持,从帧缓存的材质贴图中获得。滤镜的功能也随之复杂化,更高品质的滤镜效果可以用于提高材质品质,需要进行16点采样的插值法滤镜的使用也由此成为可能。更有趣的方面还在于,一些比如向量单位化、噪音效果以及光照函数都能够以编码的形式融入材质,并且可以通过PixelShader进行插找,在材质的查找过程中就能够进行函数值的计算,让最后的处理变得更为轻松和快捷。
除了在材质指令方面功能强大以外,在颜色操作方面的大大提高,也是cineFX架构的一大特色,并且,CineFX 128位色的引入也如同从16位色转向32位色那样,再一次吸引了我们的注意力。为了实现如此强大的颜色处理能力,与材质的操作指令数一样,在一个PixelShader程序内,能够支持1024条任意颜色操作指令,以满足CineFX所需要的大量像素级运算,免去了开发人员对于像素操作指令限制的担心。对于需要进行如此大量色彩运算的应用自然最爽不过,特别是那些需要进行光线跟踪的体积效果渲染将首先从中获益,这些效果包括烟雾、焰火、皮毛、以及草的整体效果,这些效果的实现即便是目前依然还没有找到合适简易算法,依然是制约3D运算的绊脚石。并且,如果光线跟踪效果是递归的话,所消耗的资源还将成倍增长,像计算从每个发光取样点与光源之间为了获取阴影效果的计算就非常让人头疼,在这样的情况下,消耗数百条指令十分正常。
过程贴图也是消耗资源的运算,特别是实时过程贴图通常会需要数量巨大的指令,更让人受不了的是,如果还对这些贴图进行细分反锯齿,用于单像素的指令还将大幅增加,CineFX技术无疑会让这个过程获益匪浅。实际上,我们仍然忽略一个最消耗资源的东西——光源处理,这是除了模型实时动画化以及重力运算外,另外一个十分消耗资源的运算。毫无疑问,更多的光线处理能够使得场景更为真实,当然,所需要的光线计算模型需要的计算量也是成倍增长,一个在光线模拟方面比较真实的Oren—Nayar模型,能够精确模拟粗糙的散射面,会消耗传统光照模型的数十倍的资源。如果在一个场景通过多次的光照渲染以达到与以上模型类似的效果,PixelShader内增加的程序长度能够在一个PixelShader内处理多个光源的能力派上了用场。
最有趣的是,随着GPU处理能力越来越强大,数据交换需求越来越多的时候,临时存储空间的需要量也是大大增加,就如同一个拥有大马力发动机的汽车,好的底盘自不可少一样。CineFX架构配备了32个FP32寄存器,或者也可以当作64个FP16使用,以满足临时的存储之用。除此之外,调和功能也首次登上了nVIDIA的图形处理芯片,能够简化交叉运算的处理指令,提高类似运算的处理速度。条件写掩码的加入同样也是为提高效率而作,灵活的条件写掩码能够使得分支预测简单化,通过掩码的支撑,处理器会计算两个分支预测路线,并从中挑一,无论是程序员或者是编译器都能够从中获益。<
随着Geforce FX图形芯片的正式发布,nVIDIA也在其官方网站上公布了几款率先支持GeForce FX技术的游戏画面,它们是:
游戏名称:Unreal II
<
游戏名称:Command & Conque Generals
<
游戏名称:Sea Dogs II
<
游戏名称:Splinter Cell
<
游戏名称:Rallisport Challenge
<
归根到底,nVIDIA发布GeForce FX的重大意义还是要从ATi头上将性能宝座的桂冠夺回。根据我们先前得到的一些消息看,GeForce FX的实际性能可能会比ATi Radoen9700 Pro高30%-50%。不过,由于本次nVIDIA的芯片发布还是属于纸面的技术发布,nVIDIA目前还没有提供能代表Geforce FX性能的显卡供各方测试,所以这次只是让大家对其特性有个大致的了解,等我们稍后收到正式的Geforce FX测试显卡时,一定争取在第一时间为大家奉上详细的性能测试。
从技术角度来开GeForce FX已经超越了Radeon9700 Pro,如果将Radeon9700 Pro看作是DirectX9.0的标准的话,GeForce FX则是DircetX9.0的进一步延伸。另外,完整的Cg开发辅助工具也是nVIDIA献给广大程序开发者的一套大礼,这样既有助于目前程序开发人员从繁琐的Shader编程中解脱出来,又有利于发挥出GeForce FX的潜在性能。
根据最新得到的消息,开发代号为NV30的GeForce FX显示芯片将有两个不同的版本推出:GeForce FX5800以及GeForce FX5800 Ultra,但是这两款显卡的具体工作频率我们还不等而知。按照nVIDIA的计划,NV30体系根据规格的不同还将有面向中端的NV31,高档的Geforce FX显卡大致售价399美元,而中档的NV31大致售价200美元,应该是性价比较高的产品,只是不知道具体的产品上市时间。
可以预计,所有nVIDIA旗下的大小显卡厂商都会计划推出Geforce FX显卡,但现在具体的显卡上市时间仍没有明确的消息,按惯例从发布到上市一般会经过两三个月的时间,所以正式产品的大量上市可能要等到明年一月或者二月了。如果真是这样,想要尝鲜的朋友还是把钱攒到那时候再说吧,可惜这也意味着nVIDIA将错过欧美年底圣诞节期间的销售狂潮。
虽然发布了GeForce FX,来自ATi的威胁并没有减小,曾宣称在11月发布的R350能否准时到来呢?我们将继续关注nVIDIA和ATi显卡的进一步动向,等待着新一轮显卡大战的展开。<