文章插图
3.1 三角形设置这个阶段的任务是找出三角形边界所覆盖的像素
3.2 三角形遍历这个阶段会对每个三角形进行栅格化 , 即找出每个三角形覆盖的像素区域 。区域中的片元中信息(屏幕坐标、深度值、法线坐标、纹理坐标)由3个顶点数据进行插值(必要时会采用透视校正插值)得到
3.3 提前深度测试如果用户没有在片元着色器中改变深度或自我丢弃(discard),显卡会自动开启该功能
3.4 片元着色器用于执行逐像素着色操作,如纹理采样、多重纹理采样、逐像素光照
3.5 逐片元操作3.5.1 模板测试
if 开启了模板测试 then比较参考值(使用读取掩码)和模板缓冲区中的模板值(使用读取掩码)if not 通过模板测试 then舍弃该片元end根据已设置的渲染状态更新模板缓冲区中的值(使用写入掩码)end
3.5.2 深度测试if 开启了深度测试 then比较该片元的深度值和深度缓冲区中的深度值if 通过了深度测试 thenif 开启了深度写入 then将深度值写入深度缓冲区endelse舍弃该片元endelseif 开启了深度写入 then将深度值写入深度缓冲区endend
3.5.3 混合if 开启了混合 then用alpha混合函数(alpha blending function)将该片元的颜色值和颜色缓冲区中的颜色值进行混合else直接使用该片元的颜色值end更新颜色缓冲区中的颜色值
由于还要搬砖,没有办法一一回复私信把学习资料发给大家 。我直接整理出来放在下面,觉得有帮助的话可以下载下来用于学习链接:https://pan.baidu.com/s/1C-9TE9ES9xrySqW7PfpjyQ 提取码:cqmd感谢各位人才的点赞、收藏、关注
微信搜「三年游戏人」收获一枚有情怀的游戏人,第一时间阅读最新内容,获取优质工作内推【Scriptable Render Pipeline, SRP 可编程渲染管线】