渲染管线(未完)

简化而言,渲染管线总结为:

顶点数据(vertices)->顶点着色器(Vertex Shader)->图元装配(Assem)->几何着色器(Geometry Shader)->光栅化(Rasterization)->片段着色器(Fragment Shader)->逐片段处理(Per-Fragment Operations)->帧缓冲区(FrameBuffer)->双缓冲交换(SwapBuffer)

1.顶点处理

主要进行顶点齐次坐标变换和光照。

输出一系列变换后唯一clip坐标系的顶点

2.图元装配裁剪等

这些顶点首先根据顶点之间的连接关系(点、线、多边形)进行图元装配

图元装配后进行裁剪

裁剪之后进行透视除法

透视除法之后进行视口变换

3.光栅化

确定图元包含哪些由整数坐标确定的“小方块”

确定这些小方块的Depth值和Color值(从图片顶点的Depth和Color插值得到)

输出一系列片段

4.逐片段处理

片段被称为准像素,一个整数坐标上只能有一个像素,但可以前后“堆叠”多个片段。这些片段进入竹片处理后进行测试

丢弃不通过的片段,最终通过所有处理的片段将被写入FrameBuffer用于最终屏幕显示。

5.像素处理

将像素数据的整数RGBA值转换到管线所需的浮点数

猜你喜欢

转载自blog.csdn.net/vestlee/article/details/80805333