渲染流水线三阶段学习笔记(几何阶段)
几何阶段可分为五个阶段:
1. 顶点着色器
2. 曲面细分着色器
3. 几何着色器
4. 剪裁
5. 屏幕映射
上图中绿色表示该流水线是完全可编程控制的,黄色表示可以配置但不可以编程的,蓝色表示GPU固定实现的,开发者没有控制权。虚线框表示该shader是可选的。
一:顶点着色器
1.顶点着色器首先说明是可编程的,顶点着色器作用是实现顶点的空间变换以及顶点的作色等。首要任务就是将从模型空间转换到齐次剪裁空间。
2.顶点着色器就是处理顶点的,处理每个顶点的时候就要调用一次顶点着色器,它要完成的工作主要有顶点变换和逐光照处理。
- 顶点变换:顶点变换的意思就是需要将各个顶点进行相应的坐标变化,改变坐标位置。
- 逐顶点光照:所谓逐顶点光照,简单地说就是在vetext shader中计算光照颜色,该过程将为每个顶点计算一次光照颜色,然后在通过顶点在多边形所覆盖的区域对像素颜色进行线形插值。现实中,光照值取决于光线角度,表面法线,和观察点(对于镜面高光来说)。
二:曲面细分着色器
顶点着色器首先说明是可选择的,曲面细分着色器作用是细分图元。
三:几何着色器
几何着色器首先说明是可选择的,作用是用于执行逐图元的着色操作,或产生更多图元。
四:剪裁
此阶段是可配置的,作用是剪裁掉那些不在摄像机之内的顶点。
五:屏幕映射
此阶段是可编程可配置的,作用是把图元的坐标数据转换到屏幕坐标上。
想继续学习等我下次的学习笔记呦!!
渲染流水线三阶段学习笔记(应用阶段)