OpenGL 反走样

glEnable(GL_LINE_SMOOTH) // 启用线段反走样

走样

  • 在光栅图形显示器上绘制非水平且非垂直的直线或多边形边界时,或多或少会呈现锯齿状或台阶状外观。
  • 这是因为直线、多边形、色彩边界等是连续的,而光栅则是由离散的点组成,在光栅显示设备上表现直线、多边形等,必须在离散位置采样。由于采样不充分重建后造成的信息失真,就叫走样(aliasing)。
  • 用于减少或消除这种效果的技术,就称为反走样(antialiasing)

计算机生成图像时通常存在三种走样现象中的两种:

  • 锯齿形边以及图形细节
  • 纹理绘制失真
  • 第三种现象出现在显示非常微小对象的场合。

基本上反走样方法可分为两类。

  • 第一类是提高分辨率,即增加采样点(提高采样频率)。然而,CRT光栅扫描设备显示非常精细光栅的能力是有限的,因此人们通常是在较高分辨率上对光栅进行计算,然后采用某种平均算法(滤除高频分量)得到较低分辨率的象素的属性,并显示在分辨率较低的显示器上 。这种方法称为超采样或后置滤波
  • 另一类反走样是把像素作为一个有限区域,对区域采样来调整像素的亮度,以光顺边界来减小锯齿现象。这种方法等价于图像的前置滤波。

原文

你可能感兴趣的:(OpenGL 反走样)