输入到Rendering pipline的模型资料,首先会被vertex shader 决定各顶点的显示位置和颜色。
接着,其结果会被传到rasterizer。
那么,什么是rasterizer呢?
rasterizer在Rendering pipeline的流程中又做了些什么工作呢?
所谓rasterizer,可以理解为光栅处理器,
在rasterizer中,会从vertex shader所传来的已加工的顶点资料,
制作出组成多边形的各三角形,然后,将该三角形以pixel涂满。
说的更具体一点,此部分会有两个处理组成;
一,从顶点计算出三角形的各个边的 trangle setup 处理;
二,将计算出的三角形内部涂满的 Digital Differential Analyzer(DDA)处理。
在进行DDA时,会将三角形的内部,依照屏幕扫描线的方向去涂满,
此时它会依据各顶点的颜色,进行平均计算,来决定各个像素点的颜色,
让三角形的内部呈现漂亮的渐进色。
上一章的vertex shader 里,我们进行操作的对象是 顶点,
而本小节,根据顶点的位置和颜色,把各顶点连成三角形的面,然后在面里涂满像素点。
这就是Rasterizer在整个Render pipeline流水流里的作用。
下面的小节,我们将介绍真对面进行处理的 Pixel shader。