2023年3月17日 星期五

速覽SH for glossy transport

今天本來不想卷的,但

上次看GAMES202

有個部分沒想通,做個記錄

p = q,積分項=1
p ≠ q,積分項 = 0

第6堂:Precomputed Radiance Transfer


第7堂:SH for glossy transport
這個矩陣怎麼來的?

SH一瞥

SH是一組2維基函數

抓前面m個基函數來使用


投影到SH

因為Diffuse和視角無關,上面橘色框框只是1個2維函數F

把F投影到SH上,得到投影系數C1…Cm


Glossy BRDF一瞥

BRDF每個ωo,會對映到多個ωi

等同於每個ωo,都對映到1個2維函數Fn


在球面上取n個方向

令每個方向為ωn

每個ωn,都會對映到1個2維函數Fn


第1次投影:把BRDF投影到SH

對每個ωn,把Fn投影到SH上
得到投影系數Tn1Tnm
(水平方向)

畫成表格就是

    m ➡️  SH系數
  n
⬇️    T11T1m
⬇️    T21T2m
⬇️            :
⬇️    Tn1Tnm
 方
 向


用SH系數重新分組

令 m=1 為一組
可以得到1個2維函數S1

    m ➡️  SH系數
  n
⬇️    T11
⬇️    T21
⬇️       :
⬇️    Tn1
 方
 向

全部分組完,可以得到m個2維函數Sm

第2次投影

把每個2維函數Sm都投影到SH上
最後會得到m組t1m...tMm
(垂直方向)

m = M
    m ➡️  SH系數
 M
⬇️    t11t1m         
⬇️    t21t2m
⬇️           :            
⬇️    tM1tMm   
 SH
 系
 數

到這裡都是預計算(Offline)

還原

已知ωo的方向為 n=2
進行m次基函數的疊加可以還原成

    m ➡️  SH系數
  n
⬇️         
⬇️    T21T2m
⬇️            
⬇️    
 方
 向


再把上面投影片
藍色框框的系數cp和T21T2m做內積
就是最後的光照結果

我叫tMm,這裡叫tij

把上面的過程寫成矩陣乘法

L = ( B t ) l = B ( t l )

和下面是同個意思



沒有留言:

張貼留言