environment lighting

環境光照是一種無限距離遠和所有方向的光照

 

 The split sum approximation

爲了算出着色,所以需要Solving the rendering equation,其中的V項代表了光線是否能夠到達,在去除V項之後就是單純的光線發出了

 

 

 但是一般解rendering equation的方法是Monte Carlo integration,這種方法是通過大量採樣的結果來近似的,所以就會非常慢,不適合用於實時渲染,但最近幾年已經有方法可以讓採樣的方法用在實時渲染中了。

 通過觀察發現,如果BRDF是glossy,就會變得small support!,如果是diffuse,就會smooth

 

 這正好符合之前的近似公式

 

 通過把Li項拆分出來,就會簡化計算

 

 

 同時也變成了Li對BRDF上的範圍的filter再進行normal,也就是說先預計算存儲filter,在實際使用時就可以直接查詢了。

 

 

 比方說在下圖中,如果是glossy,原本的方法是查詢鏡面反射方向的附近一片的範圍然後加權平均,現在是先Prefiltering,然後在鏡面反射方向上直接查詢即可。

 

前面的 Li項在不採樣的方法下可以解出,但後面的BRDF項比較複雜,它的參數較多,如果直接預計算就會是高維的非常耗時的計算,所以需要降低維度計算。

 

 在BRDF中,主要由F和D項來控制。

 

下圖中的R(θ)代表了不同角度下的菲涅爾項,R0代表了材料折射率,θ代表角度,D(h)是由α和θ控制,也就是說這是一個三維的計算。

 

依然需要降低維度來減少計算量,在這裏使用近似的方法來把R0拿到積分限前面,這樣就變成了二維的計算。

 

 也就是由α和θ來作爲自變量,這樣就避免了BRDF的採樣。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章