MCPLive > 杂志文章 > 让视界变得更加平滑 认识抗锯齿(上)

让视界变得更加平滑 认识抗锯齿(上)

2009-01-08maladana《微型计算机》2009-01

锯齿的产生

假设我们需要画一条曲线,应该怎么做呢?可以使用圆规,甚至直接用手在纸上随便画,我们画出的线都是平滑的,和想象中的线条完全相同。但对计算机,特别是3D游戏来说,想得到平滑的线条是非常困难的。为了解释清楚这个问题,我们先了解一个简单的概念:采样点。

对计算机来说,采样是有条件的使用数据。比如我们需要将一个曲线描绘在计算机上,计算机必须确定曲线上每一个点的位置,才能记录这个曲线。我们给计算机这样的条件:建立一个26×18的方格阵列,将曲线通过的格子全部染色。

当我们在方格阵列上描绘出这些曲线通过的格子后,就完成了采样工作。对计算机来说,下一步工作就是确定坐标,进行计算。我们可以清楚地看到,这些染色的方格连起来后形成的图形非常粗糙、不平滑,并且这些方格的坐标难以代表原始的曲线,因此计算机显示出来的线条并不是我们开始绘制的平滑曲线,而是那些灰色的格子代表的非常粗糙的曲线。为什么会这样?采样点过少吗?我们在一个确定的面积内多只有26×18个采样点,如果增加采样点会怎么样呢?

我们将同样面积内的方格数量增加到55×48个,然后采用上述同样的方法对曲线进行采样。这次我们可以明显看出,格子的数量增加后,采样得出的曲线更为接近原始图形,重要的是它更为平滑。

分辨率上升,每一个像素点更小,图像更为细腻,锯齿情况也大为减轻。但从本质上来说,这是数据更为精确的结果。在格子较多的系统中,相当于坐标的单位值更小,计算机的采样点更精细,数据更为接近真实值,近似后误差降低,因此,锯齿现象就大大减少了。由此看来,分辨率越高,计算机采样点越多,锯齿现象就越少。

分享到:

用户评论

共有评论(1)

用户名:

密码: