国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于層次遮擋圖的軟陰影渲染

2016-09-23 07:19許哲
現(xiàn)代計算機(jī) 2016年4期
關(guān)鍵詞:插值內(nèi)核光源

許哲

(四川大學(xué)計算機(jī)學(xué)院,成都 610065)

基于層次遮擋圖的軟陰影渲染

許哲

(四川大學(xué)計算機(jī)學(xué)院,成都610065)

離散化;多層次;陰影因子

0 引言

隨著現(xiàn)代計算機(jī)圖形圖像技術(shù)的發(fā)展,在虛擬現(xiàn)實和工業(yè)仿真領(lǐng)域,陰影已經(jīng)被不同程度的集成到各種各樣的渲染系統(tǒng)中,并在各種應(yīng)用中扮演著十分重要的角色。陰影圖[1]和陰影體[2]算法是目前應(yīng)用中最為廣泛的兩種實時軟陰影的渲染技術(shù)。陰影體算法太依賴于場景的復(fù)雜度,很難保證算法的高效性;大多數(shù)基于陰影貼圖的軟陰影算法都只存儲了場景表面的一層深度信息,很容易產(chǎn)生漏光現(xiàn)象。對此,本文在陰影貼圖算法的基礎(chǔ)上,通過存儲多層場景信息,并且結(jié)合后投影[3]和三線性插值算法,生成一種高效且逼真的軟陰影。

1 算法實現(xiàn)

與傳統(tǒng)陰影映射的方法類似,本文提出的算法由兩個繪制遍組成:第一個繪制遍將視點放在光源的位置渲染場景,用于生成深度圖和遮擋圖;第二個繪制遍是在常規(guī)視點下,通過處理之前生成的深度圖和遮擋圖中的信息進(jìn)行場景渲染。與傳統(tǒng)方法不同的是,本文中的深度圖和遮擋圖都是多層次結(jié)構(gòu),即二維紋理數(shù)組。這種結(jié)構(gòu)的渲染將場景離散化,深度圖中存儲深度信息,遮擋圖中存儲離散化點的陰影因子。

1.1計算遮擋區(qū)域

將視點置于光源處渲染場景時,需要對場景進(jìn)行離散化處理。多層次深度圖和遮擋圖就是離散化后的存儲結(jié)構(gòu),兩者的結(jié)構(gòu)相同,但是存儲的內(nèi)容不同:深度圖中存儲每個點的深度信息,遮擋圖中存儲遮擋比例,也就是在此點處光源被遮擋的比例。

在圖1(a)中,O為距離光源最近的遮擋點,假設(shè)它與光源平行,且它所能遮擋的范圍稱為陰影區(qū)域。當(dāng)把陰影區(qū)域反投回深度圖時,會在深度圖(近平面)上產(chǎn)生一段區(qū)域,這個區(qū)域稱為內(nèi)核。在一個內(nèi)核中存在很多采樣點,由于深度圖是多層次結(jié)構(gòu),所以在每個采樣點的位置對應(yīng)多個被遮擋點。在圖1(b)中,s2是一個采樣點,通過s2獲得的內(nèi)核中包含三個采樣點,分別為s1,s2,s3。在s1中存儲了中存儲了中存儲了這些點都在s2的內(nèi)核遮擋區(qū)域內(nèi),所以這些點的遮擋因子都要通過s2計算。

內(nèi)核的大小可以通過計算得到,在圖1(a)中,O是距離光源最近的遮擋點,且平行于光源。它們之間的產(chǎn)生的中間變量z'可以由公式(1)求得。

其中,z是O到光源的距離,w和n分別是近平面的寬度和其到光源的距離;r是深度圖的分辨率大小,l是光源的寬度。內(nèi)核的大小wk可以由公式(2)計算得到。

圖1 遮擋示意圖

其中,d是接收面到光源的距離。對應(yīng)于深度圖中每個紋理坐標(biāo)(u,v)上的采樣點,都需要計算各自的內(nèi)核大小。

1.2算機(jī)遮擋與因需

在圖1(b)中可以看到,每個采樣點都對應(yīng)一個內(nèi)核,在內(nèi)核中有很多潛在的被遮擋點,這些被遮擋點都可能被采樣點中的點所遮擋。所以,針對內(nèi)核中的每個被遮擋點,都需要計算其被遮擋的比例,也就是其遮擋因子。本文采用后投影的方法將被遮擋點通過遮擋點將其投影到光源,如圖2(a)所示,將投影到光源,光源與投影區(qū)域會有一部分重疊,重疊部分的光源相對于來說是不可見的,所以的遮擋因子可以通過重疊區(qū)域計算得到。

運(yùn)用此方法計算之后可以發(fā)現(xiàn),同一個點可能位于多個采樣點的遮擋內(nèi)核中,所以它會被多個遮擋點遮擋,如果將每個遮擋點產(chǎn)生的重疊面積相加,會導(dǎo)致一些面積被重復(fù)加了多次,從而產(chǎn)生較暗的陰影,所以,本文算法只將距離被遮擋點最近的遮擋點投影回光源計算重疊面積即可。

1.3三線信號的插值

本文算法中提出的三線性插值過濾算法依賴于場景中點的深度。當(dāng)在正常視點下渲染場景時,場景中的每個點需要被轉(zhuǎn)換到光源坐標(biāo)系下得到其在深度圖中的紋理坐標(biāo),以及該紋理坐標(biāo)上下左右四個方向的坐標(biāo)。圖2(c)展示的是在2維空間下的示意圖,s1和s2是通過點p得到的鄰近采樣點,p的深度用于確定采樣點的包圍層。比如,在s1中存儲的第一層和第二層包圍了點p,因為當(dāng)包圍p點的各個點確定了以后就可以將這些點的遮擋因子進(jìn)行插值,在圖2(c)中,注釋了每個點的深度值z和其遮擋因子ρ。對于采樣點長度和

圖2 算法示意圖

但是,求到的包圍層并不總正確??紤]圖2(d)中的p2點,在采樣點s2中存儲的第一層的點的深度由于比p2遠(yuǎn),故只能作為p2下邊緣的包圍層,但是這樣的話就得不到上包圍層,無法進(jìn)行插值。針對這種情況,本文設(shè)置一層虛擬包圍層,這個包圍層被置于光源位置,并且假設(shè)此層被完全照亮,即其遮擋因子為0。

另外,考慮圖2(d)中的p3點,在采樣點 s3中存儲的第二層的點的深度由于比p3近,故只能作為p3上邊緣的包圍層,但是這樣的話就得不到下包圍層,無法進(jìn)行插值。針對這種情況,本文也設(shè)置一層虛擬包圍層,這個包圍層被置于渲染的遠(yuǎn)平面,并且假設(shè)此層被完全遮蔽,即其遮擋因子為1。

再考慮圖2(d)中的p4點,從圖中可以看出,p4處于全影中,即被完全遮蔽,但是若使用插值的方法,p4則被計算為部分遮蔽,因為s2和s3中存儲的第一層都被完全照亮,當(dāng)它們參與插值計算時,p4點的遮擋因子一定處于0到1之間。針對這種情況,本文算法首先檢查4個上邊界是不是在同一層上,如果在同一層,就將上邊界的陰影因子設(shè)置為1。這種方法適用于p4點,因為它的上邊界都位于第一層,所以進(jìn)行插值后,p4點的陰影因子為1。

插值的方式適用于大多數(shù)情況,但是仍然有些情況是插值解決不了的。比如圖2(d)中的p5點,顯然p5是被完全照亮的,但是由于它周圍的點都位于第一層,它們的陰影因子被設(shè)置為了1,再通過三線性插值,會導(dǎo)致p5的陰影因子不為0。這種錯誤的產(chǎn)生是因為p5的深度大于上邊界的深度,例如p5位于上邊界的凹面。當(dāng)深度圖的分辨率較小時,會產(chǎn)生這種凹面,但是只要把深度圖的分辨率設(shè)置的足夠大,使其采樣足夠精確,這個錯誤就可以避免。因此,在實驗中,深度圖的分辨率被設(shè)置為1024×1024。

2 實驗結(jié)果

實驗環(huán)境為處理器:Intel Core i5-2320 CPU@3.00 GHz 3.30 GHz;內(nèi)存:4.0GB;顯卡:AMD Radeon HD 6700 Series;操作系統(tǒng):Windows 7。

本文提出的基于多層次遮擋圖的軟陰影算法可以生成高質(zhì)量高速率的軟陰影。在以下實驗結(jié)果中,光源大小都設(shè)置為2×2,屏幕分辨率和陰影圖的大小都為1024×1024,層次設(shè)置為8層。

圖3 ,圖4 分別顯示了PCSS(a)、后投影(b)、本文算法(c)三種方法渲染樹模型和桌椅模型的軟陰影效果,由對比可知PCSS生成陰影雖然有模糊的效果,但是由于受采樣點數(shù)目的影響,其陰影效果并不真實;后投影運(yùn)用面積比例計算遮擋因子,其重疊現(xiàn)象較為明顯,可以清楚的看到后投影生成的軟陰影相比較與PCSS[4]和本文算法,效果相對較暗;然而本文算法不僅解決了重疊現(xiàn)象,且軟陰影效果更加逼真。

圖3 軟陰影繪制效果對比

3 結(jié)語

本文采用多層結(jié)構(gòu)存儲深度圖和遮擋圖,并結(jié)合后投影渲染軟陰影方法,渲染出了效果較好的軟陰影效果。但本文也存在一些不足之處,由于使用插值的方式計算每個點的陰影因子,使得渲染效果不是特別精確,在陰影的精度上還需要繼續(xù)研究和改善。

[1]Lance Williams.Casting Curved Shadows on Curved Surfaces.In ACM Sig-graph Computer Graphics.ACM,1978,12:270-274.

[2]Vincent Forest,Loic Barthe,and Mathias Paulin.Accurate Shadows by Depth Complexity Sampling.In Computer Graphics Forum, Proc.Eurographics,2008:663-674.

[3]Gael Guennebaud,Loc Barthe,and Mathias Paulin.Real-Time Soft Shadow Mapping by Backprojection.In Proceedings of the 17th Eurographics Conference on Rendering Techniques.Eurographics Association,2006:227-234.

[4]Randima Fernando.Percentage-Closer Soft Shadows.In Acm Siggraph 2005 Sketches.ACM,2005:35.

Discretize;Multi-Layered;Shadow Factor

Layered Occlusion Map for Soft Shadow Generation

XU Zhe
(College of Computer Science,Sichuan University,Chengdu 610065)

許哲(1990-),女,四川成都人,本科,研究方向為計算機(jī)圖形學(xué)、虛擬現(xiàn)實

2015-12-01

2016-01-10

對于場景中的三維模型,首先在光源中心位置對場景進(jìn)行離散化處理,生成多層次深度圖;然后計算深度圖中各點的陰影因子,將其存在具有相同結(jié)構(gòu)的遮擋圖中;最后在正常視點下渲染場景,對遮擋圖中的陰影因子進(jìn)行三線性插值,得到平滑且逼真的軟陰影。

For three-dimensional model,first discretizes the scene from the center of the light and generates a multi-layered depth map.Then computes the shadow factor of these points in the depth map and stores them into an occlusion map which has the same structure with depth map.Finally,renders the scene from camera.Processes the shadow factor from occlusion map by three linear interpolation and smooth soft shadows can be determined.

猜你喜歡
插值內(nèi)核光源
多內(nèi)核操作系統(tǒng)綜述①
滑動式Lagrange與Chebyshev插值方法對BDS精密星歷內(nèi)插及其精度分析
強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
光源改變光環(huán)境
享受LED光源的卓越色彩 Acer(宏碁)PD1530i
活化非遺文化 承啟設(shè)計內(nèi)核
微軟發(fā)布新Edge瀏覽器預(yù)覽版下載換裝Chrome內(nèi)核
鮮艷迷人的HLD光源4K HDR新貴 BenQ(明基)X12000H
基于pade逼近的重心有理混合插值新方法
LED照明光源的溫升與散熱分析
共和县| 海兴县| 肥乡县| 五常市| 永宁县| 绥阳县| 崇仁县| 姚安县| 泰来县| 筠连县| 库伦旗| 普宁市| 凤凰县| 大渡口区| 依兰县| 望江县| 象山县| 利辛县| 天长市| 岱山县| 丰台区| 香格里拉县| 呼图壁县| 同德县| 六枝特区| 林口县| 西丰县| 富蕴县| 鹤庆县| 德阳市| 四平市| 九龙县| 宜黄县| 三穗县| 佳木斯市| 南溪县| 柯坪县| 大同县| 耿马| 石渠县| 巫溪县|