渲染流水线分为3个阶段:
1、应用阶段:
该阶段由CPU负责,该阶段最重要的任务是渲染图元,渲染图元可以是点、线、三角面等。这些渲染图元将会被传到下一个阶段-------几何阶段
该阶段可再分为三个阶段:
①把数据加载到显存中,过程为:1、将渲染所需数据从磁盘中加载到系统内存中。2、将网格和纹理等数据从内存加载到显卡(显存)中(显卡访问速度更快)
②设置渲染状态:设置渲染使用的顶点着色器/片元着色器、光源属性、材质等
③调用Draw Call方法:发起方是CPU,接收方是GPU,GPU根据渲染状态进行计算,最终输出到屏幕中的像素中
2、几何阶段
该阶段在GPU上进行,该阶段最重要的任务是将顶点坐标变换到屏幕空间中,再交给光栅器进行处理。
几何阶段分为三个阶段:
①顶点着色器:输入进来的每个顶点都会调用一次顶点着色器,工作内容主要有:坐标变换、逐顶点光照。
②裁剪:目的是让不在摄像机视野的物体不被处理。
③屏幕映射:从计算机内的三维坐标映射到屏幕上显示的二维坐标。
3、光栅化阶段
该阶段在GPU上进行
光栅化阶段分为三个阶段:
①三角形遍历:检查每个像素是否被一个三角网格所覆盖,若覆盖则生成一个片元。
②片元着色器:给每个片元的坐标填上RGB的三值
③逐片元操作:对以上操作进行测试,若都通过,则进行颜色合并,输出到电脑屏幕中