亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于GPU 的實時毛皮渲染及優(yōu)化

        2022-10-15 02:08方澤華溫佩賢李學闊杜曉榮
        現(xiàn)代電子技術 2022年20期
        關鍵詞:環(huán)境光法線毛皮

        方澤華,楊 林,溫佩賢,李學闊,杜曉榮

        (1.中山大學,廣東 珠海 519000;2.金山網(wǎng)絡科技有限公司,廣東 珠海 519000)

        0 引 言

        毛茸茸的毛皮是自然界中大部分物體的一大重要特征,其本質(zhì)是由許多非常細小的毛發(fā)所組成,數(shù)量龐大,使得計算模擬變得十分困難、復雜。因此,如何高效地渲染出具有真實感的毛皮一直是許多圖形學領域不可避免的一大難題。

        自2000 年來,隨著硬件高速發(fā)展,許多三維動畫制作采用幾何建模的方式來模擬頭發(fā),使用細長的圓錐體或面片表示一根毛發(fā),并結合高精度的光線追蹤算法來模擬每一根毛發(fā)上的光照,得到了十分逼真的毛皮效果。然而,這種方法計算量十分龐大,只能應用在離線渲染中,無法滿足實時渲染的要求。

        為了解決毛皮實時渲染問題,需要簡化毛皮模型。Lengyel 提供了一種通過多層紋理渲染模擬毛皮的方法,其原理是對每根毛發(fā)分層采樣成毛發(fā)切片并記錄下來,在渲染時逐層繪制毛發(fā)切片,通過多層毛發(fā)切片的像素點疊加模擬出毛茸茸的毛皮效果。其所有運算可以在GPU 下完成,得益于GPU 強大的并行運算能力,該方法具有良好的渲染效率。但是文獻[5]方法的分層切片實現(xiàn)方法和光照計算模型十分落后,無法很好地模擬出真實的毛發(fā)且占用的繪制資源較多,還有很大的改進空間。Silva 等在上述切片方法的基礎上,提出了用二維貼圖記錄毛發(fā)切片信息和毛發(fā)偏移,減少了繪制資源占用并模擬出了毛發(fā)的受力效果。本文將基于多層渲染方法,結合環(huán)境光遮蔽、各向異性高光等光照算法提出新的光照模型,并加以改進優(yōu)化,以達到真實性與性能的平衡。

        1 多層紋理渲染

        如圖1 所示,多層紋理渲染方法先是對表示毛發(fā)的圓錐體逐層采樣,并將每一層的切片范圍映射到一張二維貼圖的不透明度通道上,形成不透明度由中心向外逐漸遞減的噪點,表示一根毛發(fā)。渲染時,由里向外逐層繪制網(wǎng)格,每一層網(wǎng)格都是從模型表面沿著給定的偏移方向平移一定距離形成的,并且有給定的不透明度閾值,不透明度不在閾值范圍內(nèi)的像素點會被裁剪,以此渲染出每一層對應的切片。

        圖1 不透明度映射生成毛發(fā)切片

        根據(jù)以上原理,生成一張充滿毛發(fā)噪點的二維貼圖,如圖2a)所示;由內(nèi)到外采樣生成各層毛發(fā)切片,見圖2b);如圖2c)所示,逐層混合渲染后,即可獲得毛茸茸的毛發(fā)效果。通過調(diào)整網(wǎng)格或者貼圖在每一層的偏移方向,可以控制毛發(fā)的生長方向,由此可以實現(xiàn)圖2d)中的毛發(fā)受力效果。

        圖2 分層渲染效果

        2 光照模型

        實現(xiàn)毛發(fā)渲染效果后,需要模擬真實的毛發(fā)光照。因為毛皮材質(zhì)的特殊性,其光照模型比較復雜,下文將分別從毛發(fā)的漫反射光、環(huán)境光照、高光三方面闡述毛發(fā)光照模型的實現(xiàn)。

        2.1 漫反射光

        毛發(fā)漫反射采用經(jīng)典的線性蘭伯特光照模型,如下:

        式中:表示法線方向;表示光照方向;k表示漫反射光的顏色;為漫反射光的光照度。

        蘭伯特光照模型適用于平坦均勻的表面,如圖3a)所示,其渲染效果缺乏毛皮的特征。毛皮表面充滿了細小的毛發(fā),當光線照射到毛皮的表面時,由于毛發(fā)間相互遮擋,光線發(fā)生衰減,從而形成毛發(fā)間的陰影,這種現(xiàn)象稱為毛發(fā)自陰影現(xiàn)象,是毛發(fā)的一大重要特征。為了模擬毛發(fā)的自陰影現(xiàn)象,光照強度需要逐層遞減,而由于毛發(fā)之間存在縫隙,在邊沿處會有一定的透光性。

        為了模擬毛發(fā)的自陰影現(xiàn)象和透光性,需要引入2 個變量:光照衰減系數(shù)與光照通透系數(shù),公式如下:

        層光照衰減系數(shù)由外層向內(nèi)層逐層遞增,層光照通透系數(shù)由外層向內(nèi)層逐層遞減,衰減速率和通透速率控制每一層的遞進速率,改進后每層切片的漫反射公式為:

        如圖3b)所示,改進后的漫反射光照有了毛發(fā)間自陰影,由發(fā)尖向發(fā)根逐漸變深,突出了毛發(fā)的層次感,陰影邊沿處也有光線透過,顯得毛發(fā)更加通透,接近現(xiàn)實的毛發(fā)漫反射。

        圖3 漫反射改進

        2.2 環(huán)境光照

        環(huán)境光照是指模型所在的場景中由于光的反射而出現(xiàn)的光照,非直射光源的光照在經(jīng)典光照模型中一般是用一個光照常量或者是光照球來模擬,無環(huán)境光遮蔽的毛發(fā)圖片如圖4a)所示。但是由于物體間相互遮擋,環(huán)境光會有相應的衰減,環(huán)境光遮蔽技術就是用來模擬這種光照衰減。

        圖4 環(huán)境光照改進

        由于毛發(fā)縱橫交錯,目前主流毛發(fā)環(huán)境光遮蔽采用體素取樣的方法,通過體素劃分將毛發(fā)劃分成一塊塊小區(qū)域,并取樣計算出該區(qū)域的毛發(fā)密度及深度,繼而算出該區(qū)域的遮蔽因子,從而實現(xiàn)環(huán)境光遮蔽。

        對于多層紋理毛發(fā)渲染模型,可以用層數(shù)代替深度值簡化毛發(fā)切片上的環(huán)境光遮蔽因子采樣計算過程,簡化后每層毛發(fā)切片環(huán)境光公式如下:

        式中:k為環(huán)境光顏色;為環(huán)境光的光照強度;為每一層遮蔽因子的遞進速率,通過插值計算可以使每一層的顏色過渡變得更加平滑。圖4b)中,加入環(huán)境光遮蔽后,毛發(fā)有了層次感。

        由于毛發(fā)具有通透性,且發(fā)尖部分密度低、透光性更強,在輪廓邊沿處需要補充一定的光照,因此加入Schlick 菲涅爾近似等式計算補充的輪廓光,并結合環(huán)境光遮蔽,公式如下:

        如圖4c)所示,結合環(huán)境光遮蔽和輪廓光后的環(huán)境光照下,毛發(fā)顯得通透且富有層次感,接近與真實的毛發(fā)效果。

        2.3 高 光

        由于微觀角度下毛發(fā)可以簡化成一根直徑很小的圓柱,毛發(fā)每一片切片上的高光可以視作切片上各個點的高光積分,而每一個點的法線方向都不一樣,因此形成了毛發(fā)獨特的高光,這樣的毛發(fā)高光也就被稱為各向異性高光。

        針對毛發(fā)的各向異性高光,Kajiya 等基于Blinn-Phong 光照模型,提出通過向毛發(fā)切片橫截面的切線方向偏移法線獲取其中當前點的高光權重最大的法線,計算當前點的高光的毛發(fā)光照模型。由于橫截面上有各個方向的法線,難以定位高光權重最大的法線,而毛發(fā)切片橫截面的垂向方向切線垂直于橫截面上的任意法線,Kajiya 以此提出使用切線與中間向量的正弦值替代計算法線與中間向量的余弦值,公式如下:

        然而毛發(fā)纖維并不是單純的光滑圓柱體,顯微鏡下毛發(fā)纖維表面上有著粗糙的鱗片相互層疊,鱗片結構之下是毛髓質(zhì),光線會在毛髓質(zhì)內(nèi)折射后再次出射,還會多次反射后再次出射,存在多條傳播路徑,形成毛發(fā)復雜的光照。為了模擬光線進入毛髓質(zhì)之后經(jīng)過折射再次出射這條光路,需要在原來高光的基礎上再加一層明度偏低飽和度偏高的高光。相比于圖5a)的單層高光,圖5b)中改進之后的毛發(fā)高光更顯真實。

        圖5 毛發(fā)高光改進

        2.4 Gamma 校正

        Gamma 校正原理如圖6 所示。將上述光照模型的計算結果整合到一起后,得出如圖7a)所示效果,但是在線性色彩空間下毛球的暗部過于偏暗,這是由于人對自然光照下灰階的主觀感知并不是呈線性關系,而是圖6 中的冪函數(shù)關系,因此對于線性輸出的色彩會產(chǎn)生暗部過渡偏暗和亮部過渡偏亮的感知。為了能看到正確的均勻灰階,需要在輸出時進行Gamma 校正,將色彩從線性空間轉換到Gamma 空間中。

        圖6 Gamma 校正原理

        Gamma 校正公式如下:

        經(jīng)過Gamma 校正后,最終效果如圖7b)所示。

        圖7 校正前后效果對比

        3 算法框架

        基于第1.2 節(jié)的闡述,本文提出的實時毛皮渲染算法框架如下:

        ALGORITHM 1:Real-time Fur Rendering and Lighting

        Input:vertex,normal,force that effect on fur,lights that effect on fur

        Output:the lighting result for each layer()

        1. for= 0 to layerCount do

        2. depth ←calculate the layer depth for layer

        3. alpha ←CalcCurrentPixelAlpha(depth)

        4. V←+ FurGrowDirection(depth,,)

        5. //Calculate Lighting:

        6. for every light L∈do

        7. //Calculate Diffuse Lighting:

        8.←calculate the fill-in light in layer

        9.←calculate the light attenuation in layer

        10.()←Saturate(·L+-)

        11. //Calculate Ambient Lighting:

        12.←CalcOcclusionFactor(depth)

        13. l←Lerp(0,CalcAmbientAttenuation(depth),)

        14.← Max(0,Min(1,rimBias+rimScale*((1-(·))*)))

        15.()←l+

        16. //Calculate Specular Lighting:

        17.←Normalize(+)

        18.←(1-Normalize(+primaryShift*)·)

        19.←(1-Normalize(+secondaryShift*)·)

        20.()←+

        21.()←()+()+()+()

        22. end for

        23.()←LinearToGammaSpace(())

        24. end for

        4 優(yōu) 化

        毛發(fā)切片之間存在縫隙,需要通過大量層數(shù)疊加才能模擬出精細的頭發(fā)效果,但是這也就導致了毛發(fā)切片所在的像素會被多次重復繪制,占用大量GPU 資源,從而在移動端等GPU 資源匱乏的硬件上造成性能瓶頸。為了解決重復繪制過多問題,需要減少繪制毛發(fā)切片的層數(shù)。原本的多層渲染中,毛發(fā)是被視作圓錐體進行切片,透明度閾值與切片層數(shù)呈線性關系,這也導致了中層到外層的切片透明度偏低,從而在切片層數(shù)少的情況下會出現(xiàn)失真,如圖8a),b)所示。

        圖8 優(yōu)化效果

        因此需要調(diào)整切片的透明度閾值衰減曲線,采用二次曲線關系以減緩透明度閾值的衰減速度。如圖9 所示,改進后衰減曲線在中上層的衰減速度明顯減緩。調(diào)整衰減曲線后,中層毛發(fā)切片的透明度明顯提高,如圖8c)所示,優(yōu)化后能以1/ 3 的層數(shù)取得不錯的毛發(fā)效果,重復繪制導致的渲染壓力也明顯減少。

        圖9 衰減曲線改進

        5 結 語

        基于多層紋理渲染方法,結合多個光照模型,本文闡述了一種高效的毛皮渲染方法,能夠很好地模擬短小毛發(fā)的光照,提高毛皮的真實感效果。同時提出了優(yōu)化透明度閾值衰減曲線的方案,減少了模擬毛發(fā)所需的繪制層數(shù),使得這種技術可適用于移動端等GPU 資源匱乏的平臺中。本文研究對于毛皮材質(zhì)在游戲、動畫、虛擬現(xiàn)實等領域的應用有重要的價值。

        猜你喜歡
        環(huán)境光法線毛皮
        基于定位法線的工件自由度判定方法及應用
        單幀圖像下的環(huán)境光遮蔽估計
        橢圓法線定理的逆定理
        基于LCD顯示器光譜特性的圖像顏色一致性研究
        近期國內(nèi)毛皮市場最新行情
        近期國內(nèi)毛皮市場最新行情
        雙曲螺線的副法線曲面的相關性質(zhì)研究*
        美信推出集成七個傳感器的IC,可檢測RGB、紅外線等
        智能屏變:筆記本環(huán)境感光技術
        三談等軸雙曲線的典型性質(zhì)
        久久久精品欧美一区二区免费| 青青青免费在线视频亚洲视频| 欧美性xxxxx极品老少| 玩弄放荡人妻少妇系列| 国产成人精品午夜福利免费APP| 久久精品这里就是精品| 蜜桃a人妻精品一区二区三区| 亚洲综合av一区二区三区| 久久久久无码国产精品不卡| 91综合久久婷婷久久| 全部亚洲国产一区二区| 在教室伦流澡到高潮hgl动漫| 日产无人区一线二线三线新版 | 日本a在线免费观看| 在线亚洲妇色中文色综合| 亚洲国产精品久久艾草| 国产成人精品日本亚洲| 最新欧美一级视频| 精品国产中文久久久免费| 亚洲精品国产一区二区| 狠狠色婷婷久久一区二区| 蜜桃av观看亚洲一区二区| 亚洲精品一区三区三区在线| 精品亚洲成a人片在线观看| 国产农村妇女毛片精品久久久| 国内人妖一区二区在线播放| 欧美成人家庭影院| 久久精品人人做人人爽| 999久久久免费精品国产牛牛| 在线人妻va中文字幕| 免费看av在线网站网址| 亚洲国产一区二区三区网| 日本视频一区二区三区三州| 国产欧美日韩中文久久| 人妻被黑人粗大的猛烈进出| 国产美女胸大一区二区三区| 国产桃色一区二区三区| 免费观看激色视频网站| av少妇偷窃癖在线观看| 青青草视频在线观看绿色| 国内成+人 亚洲+欧美+综合在线|