《UnityShader入门精要笔记》 冯乐乐著,一位女性的技术文章,公认的笔触细腻,Shader入门首选的好教材。以下是个人的学习笔记。
渲染流水线
应用阶段(CPU)
- 把数据加载到显存中。
把所有渲染所需的数据(顶点的位置信息、法线方向、顶点颜色、纹理坐标等)从硬盘(HDD)中加载到系统内存(RAM)中。然后,网格和纹理等数据又被加载到显卡上的存储空间–显存(VRAM)中。 - 设置渲染状态。设置(顶点着色器/片元着色器、光源属性、材质)等数据。
- 调用Draw Call。
CPU指挥GPU → 渲染命令(Draw Call)(命令 → 渲染的图元列表)
几何阶段:
顶点数据 → 【顶点着色器 → {曲面细分着色器} → {几何着色器} → 裁剪 → 屏幕映射】→
光栅化阶段:
屏幕映射 → 【三角形设置 → 三角形遍历 → {片元着色器}】 → 逐片元操作 → 屏幕图像
个人认为作者在书中这里表达的是逐片元操作拥有许多重要操作,可以从光栅化阶段抽离出来另成一派。