泡泡网显卡频道 PCPOP首页      /      显卡     /      评测    /    正文

纹理压缩的奇妙之旅 漫谈X800的3Dc

    这样说来,ATI的3Dc其实并没有什么神秘的,这个技术的核心就是一种专门针对法线贴图的压缩的算法。

    现在我们终于进入了最关键的环节,就是3Dc技术的核心问题,法线贴图压缩算法。我接下来就为大家详细解释一下具体的原理。

    首先,3Dc压缩算法是一种基于“块”的压缩方式。什么叫做基于“块”呢?就是指压缩的过程中将要压缩的内容进行分块,再对每一个单独的“块”进行压缩。

    在3Dc技术中,ATI选择了将一个法线贴图分成若干个4×4像素(纹素)的块,每个块拥有16个像素。为什么这样分,这其中也是有一定的道理的。

    因为作为一个法线贴图来讲,虽然每个点表示了相应位置的凹凸情况。但是,一个平面的凹凸通常不会太细,即使有小尺寸的凹凸情况,也不会比贴图上4个像素还要小。所以ATI选择了以4×4个像素为一个基本的单元,然后对这个单元内的信息进行压缩。

 先将一个法线贴图分成很多4*4像素的块

    接下来我们面对的就是一个4×4像素的小的贴图了,这上面的16个点中分别以红、绿、蓝3个通道的颜色值记录了该点法线的方向,而这个方向恰恰就是该点的凹凸的情况的一个最直观的表达的形式。

 放大看每个独立的“块”

 提取其中任意的一个“块”

    接下来,3Dc技术将这16个点的颜色值中X项和Y项独立提取出来,分成两个4×4的矩阵,然后再针对每个矩阵进行压缩。<

0人已赞

关注我们

泡泡网

手机扫码关注