04 · Face Culling 面剔除 · 在完整渲染管线中的位置
CPU / Draw数据准备 · Draw Call
→
Vertex InputVAO · VBO · Attribute
→
Vertex Shader逐顶点处理
→
Primitive Assembly组装 point / line / triangle
→
Geometry Shader可选 · 按图元处理
→
Rasterization图元 → fragments
→
Fragment Shader颜色 / 深度 / 采样
→
Per-SampleDepth · Stencil · Blending
→
Framebuffer颜色 / 深度附件

三角形在生成 fragments 之前就能被整张丢弃

Primitive Assembly 先把顶点组装成三角形。Face Culling 根据屏幕上的 winding 判断正面 / 背面,不需要的面不会继续进入 Rasterization。

Primitive Assembly3 vertices → triangleFace Cullingfront / back ?Rasterize留下的面被剔除的三角形到这里就结束,不产生 Fragment
重点位置:Primitive Assembly → Face Culling → Rasterization