中华网通行证
用户名 密码
  科技动态 硬件广场 下载基地 网络教室 网络冲浪 科学博览 移动时代 手机上网 桌面壁纸 科技商情  

实话实说系列之一2000年新鲜硬件 (1)
冯宝坤/鲲鹏工作室 2000-11-27 17:11:38

3D加速卡篇

  2000年3D加速卡正在以惊人的速度更新换代,而对于体现产品核心的3D加速技术也是可以称作日新月异。随着支持D3D电脑游戏基本成为主流,具备2D/3D功能的显示卡越来越大行其道,在众家厂商纷纷大力地推波助澜下,3D显示卡已经铁定成为今年以后个人电脑必备的主流周边配置。很难想象,一点儿不懂3D加速技术的普通用户能够在未来的选购中立于不败之地。

  技术,SAY YOU,SAY ME

  (1)点取样(Point Sampling)

  为了增加图像质量,必须采取一定的措施,最先得到运用的是点采样技术。比如:一个texel像素(屏幕上的像素称为pixel像素,而纹理像素叫texel像素)在纹理中的位置是X=300.9、Y=300.9,在四舍五入后,得到最近的整数像素坐标X=301、Y=301,从而让图像质量变得更好。此方法的缺点是像素仍然离开了原来的位置,图像质量还是会变差,请见图例:blink-badfiltering。右边的人物采用了点采样技术,由于坐标的改变,它的像素要比原来大3倍。从平面几何学可知,因为它是一条线,所以3倍大的线与1倍的线是相同的。结论:这种最原始的过滤比缩减坐标的做法好得多,而且对性能的影响不大。

  (2)双线性过滤(Bilinear filtering)

  双线性过滤是2000年已经司空常见的过滤技术之一,优点是缩放图像时的速度很快,并获得了所有3D显卡的支持。其工作原理:取出预处理像素附近的四个像素坐标,再经过加权算法得到它的位置。例:现在我们需要对一个位于(100.3,100.7)的texel像素进行处理,双线性过滤会取出(100,100),(101,100),(100,101)和(101,101)的己着色pixel像素,加权来计算出预处理像素的坐标。双线性过滤后的图像比点取样更为平滑,而且减少了色块的产生。不过,双线性过滤看起来有些蒙胧,或者你会认为得它不够清楚,实际上许多朋友初次见到Quake 2中的墙壁时也有这种感觉。尽管如此,双性线过滤的优势是无可否认的。

  example2x2是一个2X2像素的图例,它原来在一块30*30图像中间(14,14)或[-(15/30),-(15/30)],此像素四个方向都有15个像素。把它们定义为(0,0),(1,1),(0,1),(1,0),那么目标像素就是(0.5,0.5)。左边点取样的结果非常简单,可以选(0,0)或(1,1)的色彩作为预处理像素颜色,得出的是深粉红色,RGB值为(255,0,255)。右边的方块则是用加权方法计算RGB值:0.25*深粉红色+0.25*浅绿+0.25*浅粉红+0.25*深蓝=(143,111,192)=浅紫色,大家注意到了吗?用双线性过滤后的方块中间恰好是浅紫色。

  (3)MIP映射(MIP Mapping)

  MIP映射为最终像素提供了更高质量的预排列像素,是优化图像质量的又一手段。不仅软件开发商可以创建,也能由硬件自动生成,两种方法做出来的东西都会精确地表现出纹理尺寸改变后的图像。比如:128*128的纹理就可以作64*64、32*32、16*16,甚至更小的MIP映射。为什么要进行MIP映射呢?请先来看看下面的例子,假设我们把一个128*128的纹理放在16*16多边形中(16*16是2D坐标,并非三维坐标),它会用其中1个像素表现整个8*8像素块,即使用1024*1024纹理也不过是用其中4个像素来表现,所以大尺寸的纹理对图像优化没有任何用处。如果转换到下一帧后,多边形大小变化为20*20,由于采用的像素数量不同,会使画面出现严重的闪烁现象。虽然双线性过滤可以减少这些闪烁,但仍然无法完全消除,我们必须另寻解决方法。MIP映射采用一些非常小的多边形来代替原始纹理,仅用1个MIP映射块就能反映8*8像素,由于这类操作是很精确的,因此源像素和目标像素基本上是一一对应的。要注意的是静态画像并不能表现出MIP映射的优势,如果谁说可以从游戏的截取画面中看到MIP映射,那他一定不清楚自己在做什么。

  (4)三线性过滤(Trilinear Filtering)

  三线性过滤是目前非常流行的图形处理特效,包括nVidia的新芯片GeForce亦支持它呢!尽管MIP映射能够很好地消除闪烁,但它仍然有不足之处,我还是继续举例来说明为好。一个64*64或128*128的MIP映射都可以放在96*96多边形中,不过图形一旦发生变化就可能有麻烦,比如第二帧97*97用128*128的MIP映射,而第三帧换成95*95则用64*64 MIP映射,画面马上会变得闪烁。

  三线性过滤的原理是在两个MIP映射中做双线性过滤,虽然道理很简单,却能让MIP映射间的转换做得更平滑。在上面那个96*96例子中,既然最理想的映射为96*96 MIP图,我们只须用接近96*96的MIP图加权处理即可实现,那么,转换到下一帧时再也不会出现图面跳动。三线性过滤的效果非常明显,在采用此种技术的游戏中,你会发现人物角色的构成格外平滑。

  由于三线性过滤需要8个像素才能完成工作,对当今的着色引擎来说,可是一个不小的负担,尤其是它的带宽要求非常高,许多采用多重纹理技术混合MIP映射的方法并不能在单周期内完成三线性过滤,因此它没办法为当今的游戏提供更多的视觉效果,只有在显卡填充率大幅上升和纹理压缩得到广泛应用时,我们才可以看出它的优势。

  (5)T-Buffer

  T-Buffer(TM)技术,是由3dfx的技术总监和技术首领GaryTarolli命名的。T-Buffer解决了许多存在于计算机3D图形中的由边缘锯齿引起的问题。3dfx解释说:“边缘锯齿是由于源图象的采样率过低引起的最后在屏幕上的图象显示错误。”T-Buffer在空间、时间和焦距上解决了边缘锯齿问题。

  一直以来传统显示卡把一个帧的内容渲染到一个帧缓冲,然后将这个帧显示在屏幕上。双缓冲和三缓冲允许在显示当前帧的时候同时渲染后继帧。而T-Buffer的工作原理与当今市场其他传统显示卡截然不同,它允许将多个帧的内容同时渲染到帧缓冲,最后输出的便是多次渲染的累积。对普通显示卡来说,由于内存、带宽等的限制,能存贮的图形数据比理想情况下少得多。于是,每次渲染都丢失一些数据,这些丢失的数据最终导致了图形的糟糕情况(包括边缘锯齿)。T-Buffer通过多重渲染、提高采样率解决了这个问题。

  一些显卡厂商主张通过“边缘”反锯齿或“过采样”来实现边缘圆润。如先对多边形的边缘作标记,然后将标记信息返回到CPU,当场景渲染结束后,CPU再执行场景边缘圆润。游戏为了支持边缘圆润,游戏中的场景边缘也得作上标记。这些额外的步骤引发一系列潜在的问题,并且可能耗尽CPU所有资源。过采样只是简单地在比最后输出高得多的分辨率下渲染场景,然后缩放比例输出到屏幕上。这项技术由PowerVR架构实现。当然,过采样会耗用很多资源来渲染1600x1200场景,最后以800x600输出。换句话说,这样做对游戏毫无用处,但对那些OEM厂商来说,在3D Winbench中可以得高分。而应用T-Buffer技术可以提供更真实的全景边缘圆润功能,它解决了像素间隙和锯齿问题。也许T-Buffer最大的好处是它能简单地打开驱动程序,然后在任何由API编写的游戏中自动应用。相对于硬件来说,软件或驱动程序对资源的占用大得多。作为3dfx公司专门用来解决边缘失真问题的一种方案,T-Buffer技术的应用不失为一种成功的突破。

  下 一 页

赛迪网
相关报道
实话实说系列之一2000年新鲜硬件 (1) (2000-11-27 17:11:46)
实话实说系列之一2000年新鲜硬件 (2) (2000-11-27 17:10:48)
实话实说系列之一2000年新鲜硬件 (3) (2000-11-27 17:08:02)
实话实说系列之一2000年新鲜硬件 (4) (2000-11-27 17:06:15)
实话实说系列之一2000年新鲜硬件 (5) (2000-11-27 17:12:47)




本站检索


中华网推荐

·国家级治脑病新药思维源
·中藏药治疗脑病新突破
·治类风湿,强直性脊柱炎
·养肾·痛风·长寿
·肝病泌尿脑萎缩新药介绍
·强直性脊柱炎康复乐园
·让中医辩证不孕不育
·国医治股骨头坏死一绝
·乙肝为何久治不愈?
·二千元垄断批发做老板
·中医中药专治前列腺
·治牛皮癣白癜风已成现实
·专治痛风病的白衣天使
·不孕不育的杏林奇葩
·专卖店零售管理系统




   

科技主编信箱