1.渲染流水线
应用阶段->几何阶段->光栅化阶段
1.1应用阶段的三个任务:
- 准备场景数据(摄像机位置、模型、光源)
- 粗粒度的剔除(剔除不可见物体)
- 设置渲染状态
重点是:输出渲染图元
1.2几何阶段:
将顶点坐标变换到屏幕空间(二维顶点坐标、顶点深度值、着色)
1.3光栅化阶段:
决定哪些像素应该被绘制在屏幕上
2.DrowCall
- 由CPU发起GPU获取的命令
- GPU将DrowCall指定的图元,根据其材质、纹理、着色器和顶点数据来计算,将其输出
3.顶点着色器(Vertex Shader)
- 完全可编程
- 对顶点进行坐标变换(From模型空间To齐次裁剪空间)
- 计算顶点颜色(根据光照)
4.片元着色器(Fragment Shader)
- 根据插值得到的片元信息,计算片元的输出颜色
5.模板测试
- 用于限制渲染区域,也可以渲染阴影、轮廓渲染
6.深度测试
- (字面意思)根据片元是否被遮挡,是否超出规定深度来决定会不会被舍弃
7.混合
- 将片元着色器的颜色值和颜色缓冲区的颜色值进行混合
- 若没有开启则不能产生透明效果