Files
obsidian-notes/3Resources/游戏开发/渲染管线/渲染流程.md
zzzisfunnyboy af39e07698 6.27
2025-06-27 00:36:51 +08:00

34 lines
954 B
Markdown

# 应用阶段 CPU与GPU交互
- 数据加载到现存
- 网格 纹理
- 设置渲染状态
- 光源属性、材质
- 调用[[DrawCall]]
- 这个命令仅仅只想一个需要被渲染的列表
# 几何阶段
- 顶点着色器
- 每个顶点进入都会调用一次顶点着色器
- 坐标变换
- 模型坐标转换到[[齐次裁剪空间 NDC坐标]]
- 逐顶点光照
- 曲面细分着色器与几何着色器
- 裁剪
- 屏幕映射
- 映射到屏幕坐标系下 也就是矩阵P
# 光栅化阶段
- 三角形设置
- 三角形遍历
- 对三角形中间的像素进行插值
- 这一步输出的结果是一个片元序列。一个片元不是真正意义上的像素,是很多状态的集合。
- 比如,屏幕 坐标、深度信息等。
- 片元着色器
- 纹理采样
- 逐片元操作
- 决定每个片元的可见性,模板测试,深度测试
- 把可见的片元与颜色缓冲区中的颜色进行混合