34.opengl PBR-理论

2020-08-26 10:19:06 浏览数 (1)

一、什么是PBR

PBR:Physically Babsed Rendering,基于物理的着色

为什么有PBR

phong光照模型,没有遵循能量守恒,对光照的反应看起来并不真实,PBR是对phong光照模型的一次革命性升级,但是最基本的概念并没有变,都是要计算 反射、漫反射、环境光,只是计算的精确度更高

  1. 基于微平面的表面模型

微平面

  1. 能量守恒

能量守恒

  1. 应用基于物理的BRDF,双向反射分布函数(Bidirectional Reflective Distribution Function) ,它的作用是基于表面材质属性来对入射辐射率进行缩放或者加权

Blinn-Phong满足BRDF,但是不满足能量守恒,真实度上不如PBR的效果好。

二、PBR的核心概念
1. 辐射通量:辐射通量Φ表示的是一个光源所输出的能量,以瓦特为单位。
2. 立体角:立体角用ω表示

立体角

立体角计算公式

3. 辐射强度:其中I表示辐射通量Φ除以立体角ω

辐射强度

4. 辐射率:单位面积上、单位立体角ω上辐射出的总能量。如下公式所示:是一个2元积分,其中cosθ表示入射角和平面法线夹角,联系前面的Phong光照可以想象,夹角越大,平面上的反射光照越弱。

辐射率

辐射率计算

5. 辐射照度or辐照度:

辐照度

Ω表示半球体

半球体

三、BRDF
BRDF就是解释上面辐照度公式中的fr

BRDF

漫反射:

反射:

Cook-Torrance反射率方程

随着Cook-Torrance BRDF中所有元素都介绍完毕,我们现在可以将基于物理的BRDF纳入到最终的反射率方程当中去了:

反射率方程

这个方程也不必去深究,暂且知道右边是对光照能量进行积分,得到总能量,左边括号里是区分反射和折射

0 人点赞