2023年8月22日 星期二

Trace Code:Image Based Lighting

Trace what

LearnOpenGL:鏡面反射 IBL


IntegrateBRDF


程式碼

pdf怎麼來的?

窩不知道

Microfacet BRDF的分母怎麼來的?

窩不知道


有些事情還是不要知道比較好 🙂🤠

遇到老司機

可以繞過英文真是太好了

原圖出自上面的連結
=( i + o )/2
固定i轉動ho就會跟著改變
最後會發現
oh的2倍大


pdf怎麼來的?

把上面那張圖反著畫(固定dωo),可知
1 / 4(HoL)= dωh / dωL
L for light dirction
h for half vector

又因為
pdfh * dωh = pdfL * dωL

代號「雪莉」

最後可得
pdfL = pdfh * dω/ dωL
pdfL = pdf/ 4(HoL)

同時 HoL = HoV
V for view direction

ImportanceSampleGGX有符合上面提到的pdfh嗎?



奇怪的是
把P(Sθ)放到Geogebra裡畫
看起來完全不像cos-1(xxx)的反函數

Geogebra

紅色那條不是應該長成這樣嗎?
對稱x=y軸

A哥的頭髮得再厚一點才行 🙂

prefilter.fs


黃色部分怎麼來的
基于物理的渲染:基于图像照明 💫

可逆的BRDF

當BRDF可逆時

圖改自這裡

從黑色箭頭方向射入1後(in)
會向多個方向散射(out)

1對多能量守恆
∀ ωi ,∫ fcos(θrdωr  1
r 就是 out

圖改自這裡

BRDF的可逆指的是
從黃色箭頭方向射入1後(in)
往黑色箭頭方向散射為0.3

多對1能量守恆
∀ ωr ,∫ fcos(θidωi  1
r 就是 out

出處

1對多能量守恆的証明

沒有留言:

張貼留言