前向渲染
** 前向渲染(Forward Rendering)**
PASS
- 不透明Pass
- 透明Pass
核心原理
- 逐对象渲染:逐个处理物体,对每个物体依次执行几何处理(顶点着色)、光照计算和最终像素着色。
- 光照计算方式:光照在片段着色器(Fragment Shader)中直接计算,每个光源对每个片段的影响需要单独计算。
流程
- 几何阶段:渲染物体几何信息(顶点处理、纹理采样等)。
- 光照阶段:对每个光源,逐个计算其对当前片段的影响。
- 合成阶段:将光照结果与材质颜色混合,输出最终颜色。
优点
- 支持复杂材质:可以灵活处理透明物体、多重纹理混合等复杂材质效果。
- 硬件兼容性好:适合移动端或低性能设备,内存占用较低。
- 抗锯齿(MSAA)支持:多采样抗锯齿实现简单。
缺点
- 光源数量限制:每个片段的光照计算复杂度为
O(物体数量 × 光源数量)
,光源过多时性能急剧下降。 - 重复计算:多个光源对同一片段的影响需要重复计算几何和材质信息。
前向渲染
http://hexo.zhywyt.me/posts/b14bd30c72f0/