?

基于線性變換球面分布的實時間接光澤反射

2023-02-21 03:25夏博劉艷麗曾威蒲一磊張嚴辭
中國圖象圖形學報 2023年2期
關鍵詞:點光源光澤球面

夏博,劉艷麗,曾威,蒲一磊,張嚴辭

1. 四川大學計算機學院,成都 610065; 2. 四川大學視覺合成圖形圖像技術國家重點學科實驗室,成都 610065

0 引 言

基于虛擬點光源(virtual point lights,VPLs)的立即輻射度算法(Keller,1997;Luksch 等,2019;Wang 等,2020)是一種常用的全局光照算法,通過借助大量虛擬點光源計算著色點的間接光照,優點是適用于動態場景,能夠使用基于物理的光照模型進行光照計算,缺點是光照計算量較大,通常只能模擬一次反彈的間接光照。

反射陰影圖算法(Dachsbacher和Stamminger,2005)可以快速生成虛擬點光源。該算法的提出加速了實時立即輻射度方法的發展,但是通常只能模擬間接光的漫反射效果。由于光澤反射相比于漫反射要復雜很多,使用立即輻射度方法實時渲染出比較真實的間接光澤反射效果一直是具有挑戰性的難題。Dachsbacher和Stamminger(2006)基于反射陰影圖,通過將虛擬點光源的光照信息濺射到相鄰像素的方式,實時渲染出了間接光澤反射效果,但在計算間接光照時只用Phong模型,該光照模型不符合物理定律,無法渲染出真實效果。Tokuyoshi和Harada(2017)提出使用基于物理的GGX BRDF(bidirectional reflectance distribution function)計算每個虛擬點光源和著色點處的光澤反射GGX SLC(stochastic light culling)算法,雖然能得到相對真實的間接光澤反射效果,但是GGX BRDF公式極其復雜,計算開銷太大,場景中虛擬點光源的數量將成為該算法的性能瓶頸。

為了降低GGX SLC算法渲染間接光澤反射效果時的計算開銷,本文基于數學方法中的線性變換球面分布(Heitz 等,2016),將復雜的GGX BRDF擬合為另一種計算復雜度較低的球面分布,并在多點光源環境下提出了一種更高效的實時間接光澤反射渲染算法。

1 相關工作

用于快速生成虛擬點光源的反射陰影圖方法提出后,大量研究投入到立即輻射度算法,如何高效利用虛擬點光源渲染全局光照一直是研究重點。

對虛擬點光源帶來的多光源問題,Dachsbacher等人(2014)進行了詳細介紹,其中對光源進行聚類是一種常用方法。Lightcuts(Walter 等,2005)就是對光源進行聚類的一種經典方法,使用二叉樹組織光源,在著色時從樹上選擇一個lightcut對著色點進行光照計算?;谧钤嫉腖ightcuts,該方法出現了一些變種,如多維的Lightcuts(Walter 等,2006)和雙向的Lightcuts(Walter 等,2012)。通過對lightcut的選擇引入隨機性(Yuksel,2019;Lin 和 Yuksel,2020)解決了從光源樹上采樣的相關性問題。此外,還有結合重要性采樣的方法(Vévoda 等,2018;Estevez和 Kulla,2018;Moreau 和 Clarberg,2019)以加速光照計算。另外,在實時渲染中交叉采樣方法(Segovia 等,2006)可以減少每個像素著色時需要的虛擬點光源數量。

光源裁剪是另一類常用的多光源加速算法。Dachsbacher和Stamminger(2006)通過濺射虛擬點光源影響范圍的邊界幾何來渲染焦散效果。Balestra(2008)提出對渲染窗口進行分塊,每一個分塊只需要對本分塊有影響的光源進行著色計算。通過對深度方向上再次分塊(Olsson 等,2012)可以進一步提高了分塊著色的裁剪精度。盡管光源裁剪算法極大提高性能,但對光源影響范圍的限制造成場景中著色時的黑暗性偏差。Tokuyoshi和Harada(2016)提出使用隨機的光源范圍進行裁剪來解決此問題。在計算光澤反射效果時,雙向反射分布函數(BRDF)是非常重要的一部分。Cook和Torrance(1982)首次將基于微表面的BRDF引入計算機圖形學。關于BRDF中最重要的法線分布函數有諸多研究。廣泛使用的是Beckmann(Beckmann 和 Spizzichino,1987)、Phong(Phong,1975)和GGX(Walter 等,2007)等法線分布函數,但只有GGX分布具有較好的拖尾效應,因此GGX BRDF廣泛應用于計算機圖形學工業領域(McAuley 等,2012;Lagarde 和 de Rousiers,2014)。然而,完全基于物理的GGX BRDF計算非常復雜,在實際應用中需要用一些方法來加速光照計算。Tokuyoshi和Harada(2017)提出計算一個緊湊的橢球包圍體來近似虛擬點光源的影響范圍,并結合隨機光源裁剪來產生光澤反射效果。Heitz等人(2016)提出使用線性變換球面分布這種數學思想來預計算GGX BRDF,從而避免了實時計算GGX BRDF的高開銷問題。該方法由于在實時渲染中的出色表現,應用于多種渲染算法中(Li 等,2018;Diolatzis 等,2020;Luksch 等,2020)。

2 算法概述

立即輻射度算法的核心思想是使用大量虛擬點光源計算間接光照。即

(1)

式中,Lo是著色點p沿觀察方向ωo的輻射亮度,N表示場景中虛擬點光源的總數,Ii(ωi)表示第i個虛擬點光源在ωi方向上的輻射強度,n是著色點的法線,f(p,ωi,ωo)是雙向反射分布函數BRDF,〈·,·〉是向量點積運算。

為了用立即輻射度方法渲染出基于物理的間接光澤反射效果,GGX SLC算法使用GGX BRDF模型描述著色點以及虛擬點光源處表面的材質屬性,即著色點的輻射亮度Lo和虛擬點光源的輻射強度Ii都需要通過GGX BRDF計算。然而,GGX BRDF公式極其復雜,當用于計算間接光澤反射時,光照計算的復雜度會隨著場景中虛擬點光源的數量呈線性增加,最終會成為GGX SLC算法的瓶頸。需要指出的是,此時的性能瓶頸并非是虛擬點光源的數量太多,根本原因是GGX BRDF模型太過復雜。因此,如何找到新的基于物理的點光源光照模型,同時具有較低的計算復雜度,是使用立即輻射度算法來精確且高效地模擬間接光澤反射效果的一大難點。針對上述難點,需要解決以下兩個關鍵問題。1)將具有高計算復雜度的GGX BRDF球面分布擬合為另一種計算量很小的球面分布flow,基本思路是基于線性變換球面分布這種數學思想,將GGX BRDF球面分布通過多次迭代擬合成相對簡單的球面分布flow。2)將flow應用在點光源光照模型中存在大量紋理采樣操作,無法直接用于間接光澤反射效果計算,否則將嚴重影響效率。所以需要找到一種解決方案,使本文點光源光照模型能夠很好地適配立即輻射度算法,真正降低渲染間接光澤反射效果時的計算開銷。

本文利用線性變換球面分布來擬合GGX BRDF,針對點光源的間接光澤反射提出一種高效算法,大幅提升了渲染效率。本文的渲染管線如圖1所示,圖中綠色階段是本文的主要工作和創新點。

圖1 本文算法渲染管線

3 基于線性變換球面分布的實時間接光澤反射

本文的核心算法是利用線性變換球面分布這種數學思想來改進GGX BRDF模型計算間接光澤反射時的缺點,提出了具有更低計算量的點光源光照模型。然后基于該光照模型,提出了更加高效的實時間接光澤反射渲染算法。

3.1 擬合GGX BRDF球面分布

GGX BRDF計算公式復雜,在立即輻射度方法中計算間接光澤反射效果(即GGX SLC算法)時開銷很大。找到一個相對簡單的球面分布flow代替復雜的GGX BRDF球面分布是改進GGX SLC算法非常重要的一個方向。本文發現線性變換球面分布這種數學方法可以將一種球面分布擬合為另一種球面分布。本文基于線性變換球面分布,將GGX BRDF球面分布f擬合為余弦球面分布fc。該余弦分布計算量很低,能夠滿足flow的要求。

將GGX BRDF球面分布擬合成為余弦球面分布的基本思路是,將粗糙度和觀察角度的余弦值cosθ分別作為紋理坐標u和v,該觀察角度是觀察向量ωo和法線n的夾角。然后針對每一組粗糙度和觀察角度,在整個半球空間上對余弦分布進行重要性采樣,將采樣得到的向量用線性余弦變換矩陣M變換到GGX BRDF球面分布上,然后分別計算兩個球面分布在各自采樣方向上的值,通過計算兩個值的差異不斷地迭代修正矩陣M中的元素,并將最終求得的矩陣M的逆矩陣M-1保存到紋理中。

需要注意的是,擬合球面分布屬于本文算法的預計算階段。在預計算階段無法獲取基礎反射率F0。因此,在實際擬合過程中,擬合的是少了菲涅爾項F(〈ωi,ωh〉)的余弦加權的GGX BRDF,即

(2)

式中,D(〈ωh,n〉)是法線分布函數,G(ωi,ωo)是幾何遮擋函數。由于ρ(ωi,ωo)少了菲涅爾項,本文單獨計算了菲涅爾項對整個積分的影響ρf,然后用ρf來縮放ρ(ωi,ωo)擬合之后的結果,從而近似地彌補了菲涅爾項。ρf的計算方法為

(3)

用Fresnel-Schlick近似公式替換F(〈ωi,ωh〉),可得

ρf=F0nA+(1-F0)fA

(4)

綜上,通過線性變換球面分布,可以用一個余弦球面分布近似代替余弦加權的GGX BRDF球面分布,即

f(ωi,ωo)〈ωi,n〉≈ρffc(ωci)

(5)

3.2 基于線性變換球面分布的單點光源光照模型

由3.1節可知,GGX BRDF球面分布f(ωi,ωo)可以擬合為余弦球面分布fc(ωci)。因此,著色點p受到的輻射亮度計算為

(6)

式中,Ψ表示著色點接收到的入射光線覆蓋的球面區域;Ψ′是Ψ經過逆向線性余弦變換后的球面區域。由于ρf中的F0只取決于具體的著色點,nA和fA都可以從紋理中采樣而得,其采樣坐標只取決于觀察角度以及著色點的粗糙度,所以它們都與ωci無關,可以提到積分符號外面。

式(6)是對球面上的區域Ψ的積分,如果Ψ無限小,則可以看做著色點p接收到的輻射來自一個無限小的點光源。因此,著色點接收到來自單個點光源的光照為

(7)

式中,I表示點光源的輻射強度。式(7)與式(6)相比,多了一項雅可比行列式dωci/dωi(Heitz等, 2016),這是因為在實際的光照計算中,由于線性余弦變換的存在,dωi和dωci對應在單位球面上的面積并不相等。

計算fc(ωci)要用到余弦分布(Heitz 等,2016),令ωnci=M-1ωi,需要注意的是,ωnci并不是單位向量,而在計算fc(ωci)時要求ωci是單位向量,所以需要先將ωnci歸一化后再取其z分量,才能得到準確的fc(ωci)的值。具體為

(8)

式中,znc是向量ωnci的z分量。

結合式(7)和式(8),可得到本文最終的單點光源光照模型,該光照模型使用余弦分布計算著色點接收到的基于物理的光照。具體為

(9)

從式(9)可知,本文得到的單點光源下的光照模型只存在少量的加法、乘法、除法、矩陣和向量相乘以及求行列式等計算量較小的運算操作,而原始的GGX BRDF光照模型存在大量三角函數、開方、高次冪等非常耗時的運算操作。將該單點光源光照模型擴展至多點光源環境時,低計算量的優勢進一步放大。同時,由于本文的光照模型本質上是將GGX BRDF球面分布擬合為余弦分布,所以不僅光照計算量低,而且能夠實現基于物理的光照效果。

3.3 基于線性變換球面分布的多點光源光照模型

由于立即輻射度算法需要使用大量虛擬點光源計算間接光照,所以需要將單點光源光照模型擴展至多點光源環境。當著色點p接收到來自多個點光源的輻射時,利用式(9)對每一個光源貢獻求和即可得到本文提出的多點光源光照模型。具體為

(10)

在式(10)表示的多點光源光照模型中,ρf和M-1僅與著色點的材質信息和觀察角度相關,與具體的光源無關。因此,可以把與光源無關的參數提到求和符號外面,將式(10)化簡為

(11)

式(11)即本文最終的多點光源光照模型。從式(11)可以看出,與光源數量呈正相關的操作只有少量的乘法、除法以及矩陣和向量相乘(求ωnci時需要用M-1乘以ωi),其余的運算復雜度都只是O(1)。當著色用的是GGX BRDF時,計算復雜度很高的法線分布函數D(〈ωh,n〉)、幾何遮擋函數G(ωi,ωo)以及菲涅爾函數F(〈ωi,ωh〉)都與具體的光源相關,所以運算量將隨光源數量呈明顯的線性增長。而式(11)表示的本文光照模型,在光源數量增加時,運算量呈次線性增長。因此,本文提出的光照模型在多點光源環境下,相比于GGX BRDF多點光源光照模型具有更低的光照計算代價以及更好的光源數量可擴展性。

3.4 基于本文光照模型的間接光澤反射效果

使用立即輻射度渲染間接光照的基本思想是在直接光源照亮的物體表面上分布大量虛擬點光源,根據直接光計算出虛擬點光源的輻射強度,然后根據這些虛擬點光源的輻射強度計算出著色點的間接光照,如圖2所示。為了與著色點區分,使用上標“′”表示與虛擬點光源相關的量。其中,ω′i表示直接光到虛擬點光源的入射方向,ω′o表示虛擬點光源到著色點的出射方向。

圖2 使用虛擬點光源計算著色點的間接光澤反射

計算虛擬點光源的輻射強度時,可使用本文提出的單點光源光照模型,即式(9)。但是算法此處存在一個難點:盡管相比于使用原始的GGX BRDF公式少了很多耗時的運算,但由于不同的虛擬點光源對不同的著色點著色時具有不同的紋理采樣坐標,會導致紋理采樣次數太多,而現代GPU架構上的紋理采樣是非常耗時的操作,將大幅降低渲染效率。

算法1 實時計算虛擬點光源的輻射強度

輸入:由影響當前像素的虛擬點光源的索引構成的數組VPLIndexes以及數組大小Ne,虛擬點光源結構體數組VPLs,著色點位置p,矩陣紋理MatTex,直接光源的入射方向ω′i。

輸出:每個虛擬點光源對當前著色點的輻射強度。

1) fori←0 toNedo;

2)Index←VPLIndexes[i];

3)F′0,α′,n′,←VPLs[Index];

4)ω′o←norm(p-VPLs[Index].position);

5)UV←calcUV(α′,dot(n′,ω′o));

6)M′-1,n′A,f′A←texture(MatTex,UV);

7)I(ω′o)←calcIntensity(ω′i,M′-1,n′A,f′A,F′0);

8) end。

其中,norm為向量歸一化;position為虛擬點光源位置;UV是紋理采樣坐標。

使用本文提出的單點光源光照模型計算虛擬點光源的輻射強度存在兩個問題。1)紋理采樣次數過多。算法1需要對每個著色點進行Ne次紋理采樣,假設渲染窗口的分辨率為W×H,那么共需要的紋理采樣次數為W×H×Ne。場景中的虛擬點光源數量增大會導致更多的紋理采樣次數,根本原因在于同一個虛擬點光源對不同著色點著色時,每次著色都要進行一次紋理采樣,因為采樣矩陣紋理的紋理坐標與ω′o有關,即與具體的著色點有關。2)多次紋理采樣被串行執行。算法1中Ne次紋理采樣被串行執行也是該算法性能低效的主要原因之一。假設一次紋理采樣所需時間為t,那么算法1在紋理采樣上的時間就是Net。降低該采樣時間甚至降低為t,即只耗費執行一次紋理采樣所需的時間是一項具有挑戰性的工作。難點是需要減少紋理采樣次數,并且盡可能使這些紋理采樣過程被并行執行。本文注意到,對于各向同性的物體材質,當交換入射向量ωi和出射向量ωo時,GGX BRDF值不變,即

f(p,ωi,ωo)=f(p,ωo,ωi)

(12)

同理,通過余弦分布近似計算GGX BRDF的分布值時,也具有類似的屬性,即

fc(ω′i,M′-1)=fc(ω′o,M″-1)

(13)

式中,M′-1和M″-1都是從矩陣紋理中采樣而得,上標“″”表示改變紋理采樣坐標后與虛擬點光源相關的量。M′-1的紋理采樣坐標取決于虛擬點光源所處表面點的粗糙度和ω′o與虛擬點光源處法線n′的夾角。M″-1的紋理采樣坐標取決于虛擬點光源所處表面點的粗糙度和ω′i與虛擬點光源處法線n′的夾角。

結合式(9),可得虛擬點光源輻射強度的計算式,即

(14)

式中,Φ表示直接光源的輻射強度,ρ″f里面的n″A、f″A和M″-1都采自于紋理。采樣坐標取決于虛擬點光源所處表面點的粗糙度和直接光入射向量ω′i與虛擬點光源處法線n′的夾角,且ω″nci=M″-1ω′o。

使用式(14)計算虛擬點光源輻射強度的好處是紋理采樣坐標與具體著色點無關,只與虛擬點光源和直接光源有關,可以將矩陣紋理采樣操作與著色點進行解耦。這樣在一個Pass中使用計算著色器并行執行與虛擬點光源數目相等的GPU線程,每個線程根據虛擬點光源處的粗糙度以及直接光入射方向,從矩陣紋理中并行地采樣出n″A、f″A以及M″-1。然后采用第2個Pass對每個著色點并行地執行光照計算,著色時與虛擬點光源相關的量只需要在GPU緩存中取出對應的n″A、f″A以及M″-1即可。

算法2 實時計算虛擬點光源的輻射強度(改進版)

輸入:由影響當前像素的虛擬點光源的索引構成的數組VPLIndexes以及數組大小Ne,虛擬點光源結構體數組VPLs,著色點位置p,矩陣紋理MatTex,直接光源的入射方向ω′i。

輸出:每個虛擬點光源對當前著色點的輻射強度。

Pass 1:所有虛擬點光源并行采樣。

1)Index←ThreadId;

2)α′,n′←VPLs[Index];

3)UV←calcUV(α′,dot(n′,ω′i));

4)M″-1,n″A,f″A←texture(MatTex,UV);

5)VPLs[Index]←M″-1,n″A,f″A。

Pass 2:片元著色。

6) fori←0 toNedo;

7)Index←VPLIndexes[i];

8)F″0,M″-1,n″A,f″A←VPLs[Index];

9)ω′o←norm(p-VPLs[Index].position);

10)I(ω′o)←calcIntensity(ω′o,M″-1,n″A,f″A,F″0);

11) end。

其中,ThreadId為當前GPU線程索引。

與算法1相比,算法2由于紋理采樣坐標與具體著色點無關,總的紋理采樣次數等于虛擬點光源的總數N,遠小于W×H×Ne,而且算法2中的紋理采樣被諸多GPU線程并行執行,所以理論上能夠將紋理采樣時間降低為t。

綜上,使用算法2計算虛擬點光源對著色點的輻射強度,結合本文提出的多點光源光照模型(即式(11))對著色點著色,可以高效地渲染間接光澤反射效果。

4 實驗結果與分析

針對GGX SLC算法使用GGX BRDF光照模型計算間接光澤反射帶來的高開銷問題,實驗首先驗證本文提出的光照模型的正確性,然后從渲染效果和渲染效率兩方面與GGX SLC算法對比,驗證本文算法能夠實現與GGX SLC算法相似的渲染效果,同時比GGX SLC算法具有更高的渲染效率。此外,驗證了隨著場景中虛擬點光源數量的增加,本文算法能夠取得更大的效率提升。

實驗環境為NVIDIA GeForce RTX 2070 GPU、Intel i7-9750H CPU、32 GB內存。若無特殊說明,渲染圖像分辨率為1 920 × 1 080像素,虛擬點光源由分辨率為512 × 512像素的反射陰影圖生成,實驗使用8 × 8的交叉采樣模式,使用濾波半徑為16的geometry-aware濾波(Segovia 等,2006)過濾交叉采樣產生的噪聲,使用16×16的分塊對虛擬點光源進行分塊著色。本文算法和GGX SLC算法渲染得到的圖像的差異使用均方根誤差(root mean squared error,RMSE)來衡量。

1)本文提出的光照模型的正確性驗證。由于本文間接光澤反射渲染算法基于本文提出的單點光源以及多點光源光照模型,所以需要先驗證本文提出的光照模型的正確性。實驗在單點光源場景驗證本文提出的光照模型的正確性。場景中只有一個平面,在平面上方有一個點光源。由于實驗場景只有一個點光源,在光照計算時沒有使用分塊著色、交叉采樣等光照加速算法。實驗渲染圖像的分辨率為800 × 600像素。圖3展示了不同粗糙度下使用本文單點光源光照模型和GGX BRDF光照模型的渲染結果??梢钥闯?,在不同粗糙度下,本文提出的光照模型能夠實現與GGX BRDF光照模型相似的渲染結果,RMSE均不超過0.002,從而驗證了本文提出的光照模型的正確性。

圖3 本文單點光源光照模型和GGX BRDF光照模型在不同粗糙度下的渲染結果

2)渲染效果和效率對比。為驗證本文算法能否實現與GGX SLC算法相似的渲染效果,是否具有比GGX SLC算法更高的渲染效率,在Sponza、金屬指環和Museum場景進行實驗,渲染結果如圖4所示。其中,Sponza場景使用的反射陰影圖的分辨率為256 × 256像素。從圖4可以看出,在3種不同場景中,使用本文算法渲染得到的最終效果與GGX SLC算法得到的非常接近,RMSE均不超過0.006,驗證了本文算法能夠實現與GGX SLC算法相似的間接光澤反射效果。

圖4 本文算法與GGX SLC算法在不同場景下渲染效果的對比

表1為本文算法和GGX SLC算法在Sponza場景渲染最終的間接光澤反射效果過程中每個Pass的時間開銷。由于在漫反射計算中,本文算法和GGX SLC算法使用的都是Lambert漫反射光照模型,因此本文算法和GGX SLC算法在漫反射計算上不存在效果和效率上的差別。通過表1可以看出,本文算法和GGX SLC算法在效率上的差異主要出現在“分塊裁剪 + 光照計算”階段,本文算法效率提升了41.0%。而兩個算法使用了相同的光源分塊裁剪方式,因此,渲染效率的提升源于本文算法在進行光照計算時沒有使用GGX SLC算法使用的GGX BRDF光照模型,而是使用了本文的具有更低計算復雜度的間接光澤反射光照模型。

表1 本文算法和GGX SLC算法在Sponza場景中使用渲染間接光澤反射效果時每個pass的時間開銷

3)虛擬點光源數量的影響。為驗證場景中虛擬點光源數量增多時,本文算法相比GGX SLC算法更加具有效率優勢,在金屬指環場景中使用不同數量的虛擬點光源進行實驗,渲染結果和效率對比分別如圖5和表2所示。從圖5可以看出,當虛擬點光源數量增加時,兩種算法渲染得到的間接光澤反射效果都會更好,在虛擬點光源數量相同情況下,RMSE不超過0.003,兩種算法的渲染效果幾乎沒有區別。然而隨著場景中虛擬點光源數量的增加,從表2可以看出,使用本文算法渲染間接光澤反射效果時,能夠比GGX SLC算法取得更大的效率提升,本質原因是本文算法在計算間接光澤反射時所用的多點光源模型中,只有少量的加法以及乘除法運算會隨著虛擬點光源數量的增加而增加,其運算開銷增加的速率低于GGX BRDF光照模型的運算開銷增加速率,所以虛擬點光源數量越多,本文算法能夠取得的效率提升就越大。

圖5 不同數量的虛擬點光源對本文算法及GGX SLC算法渲染效果的影響

表2 在金屬指環場景使用不同數量的虛擬點光源時,本文算法與GGX SLC算法的渲染效率對比

5 結 論

本文針對GGX SLC算法在光照計算上的高開銷問題,提出了一種效率更高的實時間接光澤反射算法。該算法利用線性變換球面分布來擬合GGX BRDF,以降低BRDF的計算復雜度,并相應地給出了在單、多點光源環境下的光照模型。同時,針對多點光源環境下巨大的紋理采樣開銷,提出了一種紋理采樣的優化策略。實驗結果表明,本文算法能夠實現與GGX SLC算法相似的間接光澤反射效果,而且渲染效率更高。

但是,本文算法依然存在值得繼續研究和改進的地方。1)物體表面粗糙度很低時,間接光澤反射效果不連續問題。該問題是因為粗糙度很低時虛擬點光源和著色點反射的光照信息更加高頻,如果虛擬點光源在表面上分布得不夠密集,將很難良好地重建出連續的高頻光照結果?;诹⒓摧椛涠确椒?,在低粗糙度下渲染出連續的間接光澤反射效果是未來的研究重點之一。2)物體幾何邊緣抖動現象。該抖動是由交叉采樣算法造成的,在物體幾何邊緣上法線、位置等信息會發生高頻變化,導致濾波時無法重建出良好的光照結果,從而出現抖動現象。在未來工作中,可以考慮使用Metalights(Faure 和 Chang,2010)算法降低交叉采樣帶來的噪聲,從而降低該抖動現象。3)某些情況擬合準確性不高問題。由于本文在擬合GGX BRDF的過程中采用了Heitz中的方法,因此會遇到很多與Heitz相同的問題,例如掠射角擬合準確性不高等問題。進一步提高在不同情況下擬合的準確性,是未來的研究方向之一。

猜你喜歡
點光源光澤球面
《the revision of subjunctive mood 》教學設計
夜景工程中點光源陣列媒體立面設計研究
轉體橋大直徑球面平鉸底部混凝土密實度控制
球面檢測量具的開發
深孔內球面鏜刀裝置的設計
絲柔盡現
藍莓的光澤
光澤or油光?向夏日“大油田”sayno
雙相干點光源的空間干涉
一種改進的點光源跟蹤系統設計與實現
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合