Filament官方文档fr+fd相关问题问询 PBR理论学习疑问
Filament文档
fr+fd待补充问题详解 这个TODO标注对应的是PBR渲染中漫反射BRDF(fd)与镜面反射BRDF(fr)的能量耦合守恒问题,核心内容如下:
- 常规PBR实现常直接对漫反射项和镜面反射项做加和计算,但是当材质处于高粗糙度、大入射掠射角状态时,两者的加和结果总能量会超过入射能量,直接违反能量守恒规则,这也是该章节讨论的“漫反射能量增益”问题的核心延伸点
- 问题根源是主流漫反射BRDF模型(包括Lambert、Burley漫反射等)设计阶段大多没有考虑和镜面反射项的耦合关系:镜面反射项在掠射角下会受菲涅尔效应影响能量占比升高,但传统漫反射项没有做对应的衰减适配,最终导致
fr + fd的总和大于1 - Filament官方待补充的内容,主要是他们自研的漫反射项校准方案:会基于材质粗糙度、光线入射/观察角度对漫反射项做权重缩放,确保任意场景下漫反射和镜面反射的总能量不超过1,同时保证视觉过渡自然无突变
相关学习方向参考:
- 优先学习PBR能量守恒基础理论,重点关注多散射BRDF能量补偿、漫反射与镜面反射耦合校正两个方向的内容
- 可以直接阅读Filament开源的材质系统实现代码,其标准材质Shader中已经落地了该问题的对应修复逻辑,和文档待补充内容完全对应
- 离线渲染领域的BRDF相关研究论文中,也有大量关于漫反射和镜面反射能量耦合的数学推导,可供理论层面深入学习
内容的提问来源于stack exchange,提问作者user2331095
相关产品推荐
相关产品推荐

