https://learnopengl.com/PBR/Theoryhtml
http://viclw17.github.io/2019/06/15/PBR_note/github
1:BRDF 是 一個函數 用於描述 肯定入射光方向 和 觀察方向 光通量的比率函數
f(wi, wo)google
光在三維空間中運動, 所以上面函數實際是4D的, f(thetaInput, omegaInput, thetaOutput, omegaOutput)orm
2: BRDF 須要能量守恆htm
積分 integrate f(wo) <= 1 全部出射光方向積分 3D 空間中 能量不超過 入射能量blog
通常能夠 normal 爲中心的 半球範圍內積分ip
3:PBR BRDF 函數構成get
l light , v view
f(l, v) = fresnel * Geometry * NormalDistribution / 4*(n*l) (nv)
三部分構成
Fresnel 近似公式 FSchlick(h,v,F0)=F0+(1−F0)(1−(h⋅v))5
F0 和折射率有關係, 折射率 反應 物質中 光傳播速度
G部分即幾何特徵 結合 分母 G/ 4*(n*l) (nv) 構成 visible term, 便可見性
G 描述 shadow 和 Occulsion 遮擋 和 陰影, 受到 Roughness 影響
Normal 描述法向量分佈 ,也是 和 roughness 相關
4: Image Based Light 和 Point Directional Light
image based Light 由 HDR 生成, 一個 prefilter 卷積 爲 diffuse
一個經過 不一樣的mipmap 對應不一樣的 roughness 的 specular