日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

GPU Gems1 - 11 阴影贴图反走样

發(fā)布時(shí)間:2023/12/13 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GPU Gems1 - 11 阴影贴图反走样 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

這章介紹了如何通過(guò)鄰近百分比過(guò)濾方法(Percentage-Closer Filtering , PCF)有效減少陰影貼圖的反走樣,并描述了如何實(shí)現(xiàn)一個(gè)簡(jiǎn)化版本,并對(duì)PCF方法進(jìn)行了一定改進(jìn)。關(guān)于陰影貼圖和PCF技術(shù)的一些鏈接

https://pubweb.eng.utah.edu/~cs5610/handouts/reeves87.pdf

https://gameinstitute.qq.com/community/detail/101354

首先介紹一下陰影貼圖技術(shù)。

陰影深度圖算法是一個(gè)2 pass算法。第一遍生成一張光照空間的深度圖。在第二遍,這張圖被用來(lái)比較每個(gè)像素在光照空間中的深度和在光照深度圖中的深度。

Pass1

在第一階段,將場(chǎng)景從光源的方向渲染到一個(gè)深度緩沖區(qū)。更具體地說(shuō),頂點(diǎn)著色器將幾何體變換到光照視圖空間。第一階段的最終結(jié)果是一個(gè)光照方向的場(chǎng)景深度緩存信息(陰影貼圖)。其可用于Pass 2,以確定從光源開(kāi)始,哪些像素是被遮擋的

Pass2

在第二階段,頂點(diǎn)著色器對(duì)每個(gè)頂點(diǎn)變換2次。每個(gè)頂點(diǎn)變換到像機(jī)視空間(camera view)并作為位置(position)傳入像素著色器。每個(gè)頂點(diǎn)還由光源的視點(diǎn)-投影-紋理(view-projection-texture)矩陣變換并且作為紋理坐標(biāo)(texture coordinate)傳入的像素著色器。view-projection-texture矩陣和Pass1中用來(lái)渲染場(chǎng)景的矩陣(view-projection)是相同的只是多了一個(gè)額外的變換(到texture空間的變化)。這個(gè)變換將點(diǎn)從視圖空間(XY在-1到1)變換到紋理空間(X為0到1,Y為1到?0)。

像素著色器獲得了插值后的位置(position)和紋理坐標(biāo)(texture coordinate)。現(xiàn)在在紋理坐標(biāo)中的一切都需要進(jìn)行深度測(cè)試。通過(guò)紋理坐標(biāo)的X和Y在pass1中的深度緩沖中進(jìn)行索引,然后與位置坐標(biāo)(position)的Z值比較來(lái)進(jìn)行深度測(cè)試從而渲染陰影。

PCF軟陰影技術(shù)

傳統(tǒng)的陰影貼圖技術(shù)是先對(duì)陰影貼圖中的采樣點(diǎn)filter取平均值,然后再與該位置的z值相比較,返回0或1.例如下圖的例子:待渲染的像素點(diǎn)z值為49.8,陰影貼圖中的九個(gè)采樣點(diǎn)平均值為22.9,小于49.8,也就是說(shuō)有比該渲染的像素離光源更近的像素,因此該像素點(diǎn)在陰影中,返回1.

PCF技術(shù)則是將filter和compare兩個(gè)操作的順序反轉(zhuǎn),先compare進(jìn)行深度測(cè)試得出0或1,再根據(jù)得到的結(jié)果進(jìn)行filter。如下圖所示,先與待渲染像素的z值即49.8進(jìn)行compare后得到各插值點(diǎn)的0或1值,再取平均值,即5/9 = 0.55。這解決了傳統(tǒng)的陰影貼圖技術(shù)只能返回0或1,陰影邊界走樣的問(wèn)題,從而實(shí)現(xiàn)了軟陰影。

GEM這篇文章中,實(shí)現(xiàn)了簡(jiǎn)化版的PCF,只是簡(jiǎn)單的在各處使用一個(gè)4X4 texel(紋素)的樣本塊、這個(gè)塊應(yīng)該大到能夠有效地減少走樣,但是不能達(dá)到要求大量樣本和隨機(jī)取樣的程度。如下圖。

可以看到3幅圖中的顯示效果區(qū)別很明顯,圖(c)中每像素取16個(gè)樣本,效果最為出色,達(dá)到了反走樣的預(yù)期。

?

【關(guān)鍵詞提煉】

反走樣/抗鋸齒(Antialiasing)

鄰近百分比過(guò)濾(Percentage-Closer Filtering , PCF)

透視陰影貼圖( perspective shadow maps)

?

?

?

?

?

?

總結(jié)

以上是生活随笔為你收集整理的GPU Gems1 - 11 阴影贴图反走样的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。