欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種利用局部保守光柵化方法實現硬陰影反走樣的方法與流程

文檔序號:12888168閱讀:823來源:國知局
一種利用局部保守光柵化方法實現硬陰影反走樣的方法與流程

本發(fā)明涉及一種利用局部保守光柵化方法實現硬陰影反走樣的方法,屬于3d真實感圖形學技術領域。



背景技術:

真實感圖像生成是計算機圖形學重要研究內容之一,也是虛擬現實、混合現實技術的重要組成部分。陰影效果能極大增強虛擬場景的真實感,是虛擬場景中最重要的視覺元素。目前,可交互的陰影繪制技術主要包括:光線跟蹤技術、基于幾何體的技術和基于圖像的技術。其中,基于圖像技術的陰影圖(shadowmap,sm)算法是目前應用最廣泛的方法,該方法利用場景表面可見點的離散深度圖測試采樣點的深度,算法的計算時間獨立于場景的復雜性,是目前圖形硬件支持最廣泛的實時陰影繪制技術。陰影圖算法包括繪制階段:首先,從光源視角發(fā)射若干條離散光線,計算光線與場景前表面的第一個交點,將最短距離dz存儲在z-buffer中,構成陰影圖;然后,從相機視角(view/cameraspace)繪制場景,計算光源到屏幕每個像素對應場景點的距離dp,并比較dp與陰影圖中對應坐標存儲的深度值dz,當dp>dz時,說明采樣點不能被光源直接照射,即處于陰影之中(見附圖1)。陰影圖算法效率高,但是容易產生產生鋸齒狀陰影邊界。其主要原因是陰影圖的分辨率與屏幕空間的分辨率不匹配。因此,基于陰影圖技術的陰影反走樣研究是該技術的關鍵。保守光柵化(conservativerasterization)方法由hasselgren提出(見附圖2),該方法通過三角形擴展算法,實現對每個有圖元經過的像素都執(zhí)行光柵化操作。對全部陰影區(qū)域執(zhí)行保守光柵化操作的增加了計算復雜性,根據觀察發(fā)現,硬陰影的邊界走樣發(fā)生在陰影圖的深度不連續(xù)區(qū)域,因此,本發(fā)明提出了一種局部保守光柵化方法的硬陰影反走樣方法,本方法通過對深度不連續(xù)區(qū)域進行識別,然后只對深度不連續(xù)區(qū)域執(zhí)行保守光柵化操作,實現局部優(yōu)化,進而改進繪制效率和效果。首先,方法對陰影圖深度值進行分析,利用牛頓二階差分識別陰影圖的深度連續(xù)區(qū)域和不連續(xù)區(qū)域。然后,構造幾何陰影圖,對深度不連續(xù)區(qū)域采用保守光柵化方法存儲表面可見幾何面片的頂點,使得有圖元經過的像素均能被光柵化生成片元;而對于深度連續(xù)的陰影內部區(qū)域,則采用非保守光柵化的幾何陰影圖方法。最后,利用幾何陰影圖的連續(xù)深度測試,以及邊界恢復算法,快速實現準確的陰影反走樣繪制。



技術實現要素:

本發(fā)明的目的在于提供一種利用局部保守光柵化方法實現硬陰影反走樣的方法,其有效的降低了保守光柵化幾何陰影圖方法的計算的復雜度,而且保持了亞像素級硬陰影反走樣的精度問題。

本發(fā)明的技術方案是這樣實現的:一種利用局部保守光柵化方法實現硬陰影反走樣的方法,其特征在于:構建光源為視點的陰影圖,利用牛頓二階差分測試深度的連續(xù)性,將陰影圖分為連續(xù)區(qū)域ca和不連續(xù)區(qū)域da。再次以光源為視點,抽取三維場景表面可見三角面片信息,存儲三角形的頂點信息f,對不連續(xù)區(qū)域da實施保守光柵化方法,對連續(xù)區(qū)域ca保留其離散深度值,構造深度圖t2。根據紋素坐標保持兩個深度圖的對應關系,其過程可描述為:原始深度圖t1,其分辨率為nxn,紋素坐標表示為t1i,j,其中1i,jn。經過深度劃分后,形成深度圖t2,使t2保持紋理圖t1的分辨率,即t1i,jt2i,j對應位置具有相同的紋素坐標。最后,進行深度測試判斷陰影區(qū)域,運用邊界恢復算法繪制場景。其具體的方法按以下步驟實現:

步驟1、設三維虛擬場景點光源位置為l,生成以光源位置l為視點的分辨率為nxn的陰影圖s。對與s中的離散深度值,執(zhí)行牛頓二階差分測試,分別按照水平方向和垂直方向以及對角線方向對陰影圖的深度值進行檢測,當水平方向和垂直方向及對角線方向的二階牛頓差分值分別小于閾值ed,ied,j時(見公式1和公式2),將s分成深度連續(xù)區(qū)域ca和深度不連續(xù)區(qū)域da。

設矩陣為陰影圖中某一紋素,記ed,ied,j,分別為ti,j中對應行和列深度值的數學期望,則:

(1)

(2)

其中,n為陰影圖大小。設表示紋素texeli,j的保守化深度,在公式(1)和公式(2)中,分別表示應行和列對應紋素的保守化深度值。

步驟2、再次以光源位置l為視點,開啟深度測試生成前表面可見圖元;

步驟3、識別、抽取可見圖元信息,壓縮存儲三角形頂點坐標,在一個128位的紋理存儲單元中,32位rgb分量存儲三角形的2d頂點坐標v0.xy,v1.xy,v2.xy根據頂點坐標計算三角形法向量,用于深度重建,16位用于存儲三角形面片深度及三角形id信息,16位存儲三角形斜率,用于計算任意采樣點深度值。

步驟4、壓縮存儲紋素中心深度,法向量及三角形id。完成抽取場景表面可見三角面片,存儲三角形頂點坐標及其中心深度值dc,形成與s相同尺寸的幾何陰影圖g。

步驟5、構建s與g的坐標對應關系,由于s與g的大小相同(分辨率均為nxn),通過坐標建立對應關系。識別出g中的深度不連續(xù)區(qū)域范圍da。對da內的幾何面片(三角形)開啟保守光柵化操作,通過三角形擴展算法,使得對每個有圖元經過的像素都執(zhí)行光柵化操作。對于ca區(qū)域,則直接保持其幾何陰影圖及紋素中心坐標的離散深度值。

步驟6、深度重建,將視角轉換到相機(觀察者),繪制屏幕像素對應的場景采樣點,根據采樣點在光照空間對應的投影三角形,利用公式(4)重建并計算該點在幾何陰影圖中的深度

(4)

步驟7、深度比較,計算光源到屏幕每個像素對應場景點的距離dp,比較dp與陰影圖中對應坐標存儲的深度值dz(即重建的深度),當dp>dz時,采樣點處于陰影之中,繪制為暗點(處于陰影之中),否則為亮點。

步驟8、邊界恢復,為了防止細小三角形面皮的缺失,再結合已有的邊界恢復方法,完成反走樣繪制。

通過以上步驟可以實現精確的硬陰影邊界的亞像素級反走樣繪制,同時提高繪制效率。

本發(fā)明的積極效果是可以提高亞像素級幾何陰影圖算法的繪制效率,減少了光柵化階段的像素計算量,提高了傳統陰影圖算法的繪制效果。該方法在三維虛擬場景繪制,尤其是動態(tài)虛擬場景繪制中,對實時性和效果要求較高的環(huán)境下具有實際價值,可以用在影視動漫渲染和計算機仿真中。

附圖說明

圖1陰影圖算法陰影繪制原理圖。

圖2保守光柵化功能示意圖。

圖3為rgba緩存存儲結構。

圖4表面可見幾何圖元抽取示意圖。

具體實施方式

下面結合附圖對本發(fā)明做進一步的描述:一種利用局部保守光柵化方法實現硬陰影反走樣的方法,其特征在于:構建光源為視點的陰影圖如圖1的深度圖,利用牛頓二階差分測試深度的連續(xù)性,將陰影圖分為連續(xù)區(qū)域ca和不連續(xù)區(qū)域da。再次以光源為視點,抽取三維場景表面可見三角面片信息,存儲三角形的頂點信息f,對不連續(xù)區(qū)域da實施保守光柵化方法,對連續(xù)區(qū)域ca保留其離散深度值,根據紋素坐標保持兩個深度圖的對應關系,即將原始深度圖存儲為紋理圖t1,分辨率為nxn,紋素坐標分別為tij其中,1i,jn,對t1進行深度劃分后,需保持其分辨率不變,即對應紋素頂點坐標不變。最后,進行深度測試判斷陰影區(qū)域,運用邊界恢復算法繪制場景,其特征在于具體步驟如下:步驟1、設三維虛擬場景點光源位置為l,生成以光源位置l為視點的分辨率為nxn的陰影圖s。對與s中的離散深度值,執(zhí)行牛頓二階差分測試,分別按照水平方向和垂直方向對陰影圖的深度值進行檢測,當水平方向和垂直方向的二階牛頓差分值分別小于閾值ed,ied,j時(見公式1和公式2),將s分成深度連續(xù)區(qū)域ca和深度不連續(xù)區(qū)域da。

設矩陣為陰影圖中某一紋素,記ed,ied,j,分別為ti,j中對應行和列深度值的數學期望,則:

(1)

(2)

其中,n為陰影圖大小,為紋素texeli,j的保守化深度。深度連續(xù)性的定義如公式(3-6)所示:

(3)

(4)

(5)

(6)

步驟2、再次以光源位置l為視點,開啟深度測試生成前表面可見圖元;

步驟3、識別、抽取可見圖元信息,壓縮存儲三角形頂點坐標,在一個128位的紋理存儲單元中,32位rgb分量存儲三角形的2d頂點坐標v0.xy,v1.xy,v2.xy根據頂點坐標計算三角形法向量,用于深度重建,16位用于存儲三角形面片深度及三角形id信息,16位存儲三角形斜率,用于計算任意采樣點深度值。

步驟4、壓縮存儲紋素中心深度,法向量及三角形id。如圖3所示,完成抽取場景表面可見三角面片,存儲三角形頂點坐標及其中心深度值dc,形成與s相同尺寸的幾何陰影圖g。

步驟5、構建s與g的坐標對應關系,由于s與g的大小相同(分辨率均為nxn),通過坐標建立對應關系。識別出g中的深度不連續(xù)區(qū)域范圍da。對da內的幾何面片(三角形)開啟保守光柵化操作,通過三角形擴展算法,使得對每個有圖元經過的像素都執(zhí)行光柵化操作。對于ca區(qū)域,則直接保持其幾何陰影圖及紋素中心坐標的離散深度值。

步驟6、深度重建,將視角轉換到相機(觀察者),繪制屏幕像素對應的場景采樣點,根據采樣點在光照空間對應的投影三角形,,利用公式(4)重建并計算該點在幾何陰影圖中的深度

(4)

步驟7、深度比較,計算光源到屏幕每個像素對應場景點的距離dp,比較dp與陰影圖中對應坐標存儲的深度值dz(即重建的深度),當dp>dz時,采樣點處于陰影之中,繪制為暗點(處于陰影之中),否則為亮點。通過以上步驟可以實現精確的硬陰影邊界的亞像素級反走樣繪制,同時提高繪制效率。

步驟8、邊界恢復,為了防止細小三角形面片的缺失,結合已有的邊界恢復方法,完成反走樣繪制。

當前第1頁1 2 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
海林市| 天台县| 延安市| 交城县| 莱阳市| 兴义市| 宁南县| 西藏| 明水县| 曲松县| 永吉县| 临颍县| 敦化市| 宁安市| 伊川县| 衢州市| 图木舒克市| 教育| 达尔| 康平县| 梁河县| 周宁县| 阿坝| 宝兴县| 合江县| 宣恩县| 长治县| 汝南县| 卢湾区| 南和县| 庆阳市| 措勤县| 连州市| 鸡西市| 涿州市| 临桂县| 剑川县| 平塘县| 台东市| 辽阳县| 滦南县|