Shader基础之渲染流程

本文记录Shader将模型顶点渲染到屏幕上的流程及流程简介

 

流程:

顶点着色器->光栅化->片段着色器

->alpha测试->模板测试->深度测试

->Blend Gbuffer->front buffer->frame buffer

->显示器

 

1.顶点着色器

(1)计算顶点的颜色

(2)将顶点由物体坐标系变换到相机坐标系

2.光栅化

    将顶点转换成像素   

 (既,四个顶点,用差值转换成为一个像素面)

   如(0,0,0)(0,100,0)(100,0,0)(100,100,0)四个顶点,那么转化成为像素后,就是100*100个像素

3.片段着色器(也叫 片元着色器)

(1)纹理采样  从纹理中将像素值赋给对应像素

(2)像素跟灯光计算(逐片元计算)

(如上4个点,顶点着色器会计算4次,经过光栅化后,片段着色器会计算100*100次,所以,运算优先放在顶点着色器)

4.三次测试

    alpha测试:挑选合格的像素显示(例如Shader设置了像素值范围)

    模板测试:挑选合格的像素显示(像素不止携带了RGBA信息,还有模板信息)

    深度测试:挑选合格的像素显示(例如,远距离的像素被近距离的像素遮挡,那远距离的像素则不显示)

5.Blend

    将当前要渲染的像素和意境渲染的像素进行混合运算

6.Gbuffer

    中转、暂存 (包括RGBA,模板值,深度值等)

7.front buffer和frame buffer

   两者交替在屏幕显示

 

posted on 2018-11-20 16:33  Lumious  阅读(964)  评论(0编辑  收藏  举报

导航