理解渲染方程
2025-03-17 02:10:53
理解渲染方程最重要的一点是,由微分定义外推到方向向量和点。
反射率方程
反射率方程
L 表示辐射率
learnOpenGL 已经讲得很清晰了
https://learnopengl-cn.github.io/07 PBR/01 Theory/
如果我们把立体角 ω 和面积 A 看作是无穷小的,那么我们就能用辐射率来表示单束光线穿过空间中的一个点的通量。这就使我们可以计算得出作用于单个(片段)点上的单束光线的辐射率,我们实际上把立体角 ω 转变为方向向量 ω 然后把面 A 转换为点 p。这样我们就能直接在我们的着色器中使用辐射率来计算单束光线对每个片段的作用了。
最重要的就是这里,外推到无穷小,立体角 ω 对应光线(方向向量),面积 A 对应着色点,辐射率 L 对应光强。
那么其实从定义到实践就打通了。比如,公式仅仅是对入射光强乘以表面的系数再积分,就是反射的光强,自然而然地就能有这个理解。