Linearly Transformed Cosines 的数学动机
tldr
Linearly Transformed Cosines (LTC) 是实时渲染里常用的 PBR 面光反射技巧,它的核心思想是让余弦函数去近似 PBR 渲染里复杂的 BRDF。准确地说,LTC 不是简单地用个普通的余弦函数去拟合 BRDF,而是对余弦函数施加一个线性变换(伸缩/错切/旋转变换),这个变换和使其能够拟合不同视角和不同粗糙度下的 BRDF 波瓣。
简而言之就是,我们希望将一个难以解析积分的 BRDF,转换为一个容易解析积分的球面余弦函数。
因为像
注意到
是面光在单位半球面上的投影区域,而不是整个单位半球面
完整论文 Real-time polygonal-light shading with linearly transformed cosines:
https://dl.acm.org/doi/10.1145/2897824.2925895
实现效果:https://www.bilibili.com/video/BV1QTu16qEBt/