延迟渲染

延迟渲染(Deferred Rendering)

PASS

  • 几何Pass
  • 光照Pass
  • 透明Pass

核心原理

  • 分阶段渲染:将几何处理和光照计算分离为两个独立阶段。
  • G-Buffer(Geometry Buffer):在第一阶段将所有几何信息(位置、法线、材质颜色等)存储到多个纹理中,第二阶段基于这些信息统一计算光照。

流程

  1. 几何阶段
    • 将所有物体的几何信息(位置、法线、漫反射颜色、高光强度等)写入G-Buffer。
  2. 光照阶段
    • 遍历所有光源,基于G-Buffer中的数据进行光照计算。
    • 最终将光照结果合成输出。

优点

  • 高效处理多光源:光照计算复杂度为 O(光源数量),与场景复杂度无关,适合大量动态光源的场景。
  • 减少重复计算:几何信息只需计算一次,所有光源共享G-Buffer数据。
  • 灵活的后期处理:G-Buffer可用于SSAO(屏幕空间环境光遮蔽)、全局光照等后处理效果。

缺点

  • 内存占用高:G-Buffer需要存储多个高精度纹理(如位置、法线、颜色等),对带宽和显存要求高。
  • 透明物体处理困难:需要额外的前向渲染通道处理透明物体(如玻璃、粒子效果)。
  • 抗锯齿实现复杂:传统MSAA无法直接应用于G-Buffer,通常需改用TAA(时间抗锯齿)或FXAA。

延迟渲染
http://hexo.zhywzs.top/posts/6a7cd41960bf/
作者
zhywzs
发布于
2025年4月23日
更新于
2025年4月23日
许可协议