麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

一種基于圖像屏幕空間的實時軟陰影實現方法

文檔序號:6621848閱讀:1258來源:國知局
一種基于圖像屏幕空間的實時軟陰影實現方法
【專利摘要】本發明公開一種基于圖像屏幕空間的實時軟陰影實現方法,包括如下步驟:A、遍歷場景內所有在虛擬相機可見范圍內的對象。B、構建一個光源空間,并創建一個用于保存屏幕空間內深度的紋理,生成一張shadow?map。C、經過投影變換將世界位置坐標轉化到燈光空間,獲得像素的新位置的深度圖。D、將像素的新位置的深度和shadow?map進行比較,判定哪些像素處于陰影中,從而得到一張shadow?mask。E、對shadow?mask進行高斯模糊處理。F、將模糊后的shadow?mask與場景顏色進行疊加,實現軟陰影效果。本發明改良了傳統基于采樣紋理的PCF,有效的解決了場景模型邊界出現鋸齒的現象,實現了較好的軟陰影效果,而且對于較復雜的場景實現軟陰影的效果也非常好,繪制效率高。
【專利說明】一種基于圖像屏幕空間的實時軟陰影實現方法

【技術領域】
[0001] 本發明涉及軟陰影【技術領域】,尤其涉及一種基于圖像屏幕空間的實時軟陰影實現 方法。

【背景技術】
[0002] 作為游戲引擎中一個非常重要功能的光影效果,陰影在虛擬的游戲有著至關重要 的作用,加入了此效果,圖像的立體感和層次將更加的豐富,同時也提高了場景的真實感受 度。陰影可以分為軟硬兩種陰影,硬陰影算法比較簡單,而實時軟陰影比硬陰影更具有真 實感,可是動態的軟陰影的實現是計算機圖形學研究的一個難點。傳統實時軟陰影的實現 過程如下:首先以光源為視點生成包含場景深度信息的深度圖(shadow map),然后從觀察 者視點將場景渲染到一張屏幕紋理緩沖中,進而對此采樣的紋理進行多次采樣取平均值 (percentage closer filtering, PCF),這種方法產生的軟陰影質量和采樣次數有直接關 系,如果要得到比較柔和的軟陰影效果,則需要大量的紋理采樣,效率低下。


【發明內容】

[0003] 本發明的目的在于通過一種基于圖像屏幕空間的實時軟陰影實現方法,來解決以 上【背景技術】部分提到的問題。
[0004] 為達此目的,本發明采用以下技術方案:
[0005] -種基于圖像屏幕空間的實時軟陰影實現方法,包括如下步驟:
[0006] A、遍歷場景內所有在虛擬相機可見范圍內的對象;
[0007] B、構建一個光源空間,并創建一個用于保存屏幕空間內深度的紋理,生成一張 shadow map ;
[0008] C、經過投影變換將世界位置坐標轉化到燈光空間,獲得像素的新位置的深度圖;
[0009] D、將所述像素的新位置的深度和shadow map進行比較,判定哪些像素處于陰影 中,從而得到一張 shadow mask ;
[0010] E、對所述shadow mask進行高斯模糊處理;
[0011] F、將模糊后的shadow mask與場景顏色進行疊加,實現軟陰影效果。
[0012] 特別地,所述步驟B具體包括:在相機可見范圍內,構建一個光源空間,將相機的 朝向與光源方向調為一致,并創建一個用于保存屏幕空間內深度的紋理,然后繪制場景、 讀取深度緩沖的內容,將場景的深度緩沖信息渲染到浮點格式的紋理中,生成一張 shadow map。
[0013] 特別地,所述步驟E具體包括:首先創建一個紋理并獲得紋理的表面信息,然后利 用高斯模糊對紋理表面進行處理,其中,在渲染該紋理時需要渲染兩個目標:水平方向和垂 直方向;對shadow mask做高斯模糊,經過GPU光柵化后,渲染出一個屏幕大小的方形即模 糊后的紋理。
[0014] 本發明提出的基于圖像屏幕空間的實時軟陰影實現方法改良了傳統基于采樣紋 理的PCF,有效的解決了場景模型邊界出現鋸齒的現象,實現了較好的軟陰影效果,而且對 于較復雜的場景實現軟陰影的效果也非常好,繪制效率高。

【專利附圖】

【附圖說明】
[0015] 圖1為本實施例提供的基于圖像屏幕空間的實時軟陰影實現方法流程圖;
[0016] 圖2為本實施例提供的模糊前紋理圖;
[0017] 圖3為本實施例提供的模糊后紋理圖;
[0018] 圖4為本實施例提供的中心點相鄰像素所占的權重示意圖。

【具體實施方式】
[0019] 下面結合附圖和實施例對本發明作進一步說明。可以理解的是,此處所描述的具 體實施例僅僅用于解釋本發明,而非對本發明的限定。另外還需要說明的是,為了便于描 述,附圖中僅示出了與本發明相關的部分而非全部內容。
[0020] 請參照圖1所示,圖1為本實施例提供的基于圖像屏幕空間的實時軟陰影實現方 法流程圖。
[0021] 本實施例中基于圖像屏幕空間的實時軟陰影實現方法包括如下步驟:
[0022] 步驟S101、遍歷場景內所有在虛擬相機可見范圍內的對象。遍歷場景中的對象是 否在虛擬相機可見范圍內,只渲染相機內可見的區域。
[0023] 步驟S102、構建一個光源空間,并創建一個用于保存屏幕空間內深度的紋理,生成 一張 shadow map。在相機可見范圍內,構建一個光源空間,將相機的朝向與光源方向調為一 致,并創建一個用于保存屏幕空間內深度的紋理,然后繪制場景、讀取深度緩沖的內容,將 場景的深度緩沖信息渲染到浮點格式的紋理中,生成一張 shadow map即深度圖。
[0024] 步驟S103、經過投影變換將世界位置坐標轉化到燈光空間,獲得像素的新位置的 深度圖。根據步驟S102生成的shadow map,在屏幕空間計算陰影的過程中,經過投影變換 將世界位置坐標轉化到燈光空間。
[0025] 步驟S104、將所述像素的新位置和深度圖進行比較,判定哪些像素處于陰影中,從 而得到一張 shadow mask,S卩非陰影的地方是白色,陰影的地方是黑色。從燈光空間渲染場 景時,把該空間下場景中的像素逐個和shadow map中保存的深度進行比較,當像素深度大 于深度圖的深度時,則判定該像素是受陰影的,當等于深度圖的深度時,則判定該像素是受 光的,從而得到一張屏幕大小紋理圖的shadow mask即陰影遮罩。
[0026] 步驟S105、對所述shadow mask進行高斯模糊處理。首先創建一個紋理并獲得紋 理的表面信息,然后利用高斯模糊對紋理表面進行處理,其中,在渲染該紋理時需要渲染兩 個目標:水平方向和垂直方向;對shadow mask做高斯模糊,經過GPU光柵化后,渲染出一個 屏幕大小的方形即模糊后的紋理。其中,GPU是Graphic Processing Unit的縮寫,簡稱圖 形處理單元。模糊處理后的效果對比如圖2和圖3所示,圖2為模糊前的紋理圖,圖3為模 糊后的紋理圖。
[0027] 高斯模糊是一種圖像模糊的濾波器,它正態分布計算圖像中每個像素的變換,因 為深度信息是記錄二維空間的坐標信息,則它在二維空間的方程為: / 、 1 ~(u2+v2)/
[0028] G(U,V)=_L^e /2σ 2 2πσ2
[0029] 其中,〇是正態分布的方差,u和v是像素的坐標值。利用相鄰像素的加權值來表 示該點的像素值,它的應用原理是取shadow mask中每個像素的周邊像素的平均值。具體 過程如下:一、計算權重值。需要根據σ的值來確定,一般取值為σ =2。如圖4所示,把 w5所占格子的像素定為中心像素,臨近的w8像素的權重值和中心像素相加并平均,就可以 得到中心像素的權重值,但是由于所有像素權重值的總和必須為1,因此把所有的像素權重 除以中心像素的權重值就可以了。由此得到相鄰每個像素的權重值。二、獲得各個像素的 權重值和各個像素的顏色值后就可以計算高斯模糊了。把每個點的像素值*對應像素的權 重值,然后就把9個值加在一起即為中心點的高斯模糊值。
[0030] 步驟S106、將模糊后的shadow mask與場景顏色進行疊加,實現軟陰影效果。模糊 后的紋理投射到屏幕上,實現實時軟陰影。
[0031] 本發明的技術方案改良了傳統基于采樣紋理的PCF,有效的解決了場景模型邊界 出現鋸齒的現象,實現了較好的軟陰影效果,而且對于較復雜的場景實現軟陰影的效果也 非常好,繪制效率高。
[0032] 注意,上述僅為本發明的較佳實施例及所運用技術原理。本領域技術人員會理解, 本發明不限于這里所述的特定實施例,對本領域技術人員來說能夠進行各種明顯的變化、 重新調整和替代而不會脫離本發明的保護范圍。因此,雖然通過以上實施例對本發明進行 了較為詳細的說明,但是本發明不僅僅限于以上實施例,在不脫離本發明構思的情況下,還 可以包括更多其他等效實施例,而本發明的范圍由所附的權利要求范圍決定。
【權利要求】
1. 一種基于圖像屏幕空間的實時軟陰影實現方法,其特征在于,包括如下步驟: A、 遍歷場景內所有在虛擬相機可見范圍內的對象; B、 構建一個光源空間,并創建一個用于保存屏幕空間內深度的紋理,生成一張 shadow map ; C、 經過投影變換將世界位置坐標轉化到燈光空間,獲得像素的新位置的深度圖; D、 將所述像素的新位置的深度和shadow map進行比較,判定哪些像素處于陰影中,從 而得到一張 shadow mask ; E、 對所述shadow mask進行高斯模糊處理; F、 將模糊后的shadow mask與場景顏色進行疊加,實現軟陰影效果。
2. 根據權利要求1所述的基于圖像屏幕空間的實時軟陰影實現方法,其特征在于,所 述步驟B具體包括:在相機可見范圍內,構建一個光源空間,將相機的朝向與光源方向調為 一致,并創建一個用于保存屏幕空間內深度的紋理,然后繪制場景、讀取深度緩沖的內容, 將場景的深度緩沖信息渲染到浮點格式的紋理中,生成一張 shadow map。
3. 根據權利要求1或2任一項所述的基于圖像屏幕空間的實時軟陰影實現方法,其特 征在于,所述步驟E具體包括:首先創建一個紋理并獲得紋理的表面信息,然后利用高斯模 糊對紋理表面進行處理,其中,在渲染該紋理時需要渲染兩個目標:水平方向和垂直方向; 對shadow mask做高斯模糊,經過GPU光柵化后,渲染出一個屏幕大小的方形即模糊后的紋 理。
【文檔編號】G06T15/60GK104103089SQ201410367545
【公開日】2014年10月15日 申請日期:2014年7月29日 優先權日:2014年7月29日
【發明者】張翼 申請人:無錫梵天信息技術股份有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 黄骅市| 石河子市| 临潭县| 信阳市| 延长县| 陇川县| 枣强县| 郓城县| 勐海县| 桓仁| 会东县| 信阳市| 恩平市| 安平县| 临清市| 顺平县| 临沂市| 宁南县| 伊通| 辽中县| 神木县| 敦化市| 秦皇岛市| 鄱阳县| 成都市| 青铜峡市| 昌邑市| 蓬安县| 贡山| 高邮市| 潢川县| 慈利县| 平塘县| 皮山县| 浪卡子县| 凤山市| 万全县| 澳门| 固安县| 新绛县| 清镇市|