05 Rasterization (Triangles)

发布时间 2023-04-13 22:30:58作者: ETHERovo

1. Screen

  • Pixel(RGB 0-255)
  • Screen Space
  • Viewport Transform
    将屏幕进行缩放,然后将重心平移到原点,得到视口变换矩阵

2. Triangles

  • 最基础的多边形,任意多边形可以拆成三角形,三角形一定是平面图形,三角形内外定义清晰并可用叉积辨别(像素中心点),三角形内部属性可用三个点的属性由差值得到。

2.1 Sampling

2.1.1 扫描方法


特别的,若一个点在两个三角形的边界上,要么不做处理,要么特殊处理。

  • Axis-aligned Bounding Box(AABB) 轴向包围盒

    取三角形的最大最小坐标围成包围盒,只对包围盒内部的像素做判断。
  • Incremental Triangle Traversal 增量三角形

    对每一行确定最大最小坐标边界,再做扫描。适应于于三角形很窄,且倾斜45°的情况。

2.1.2 Jaggies 锯齿

来源

[1]Games101. 闫令琪