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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

GPU Gems1 - 14 透视阴影贴图(Perspective Shadow Maps: Care and Feeding)

發布時間:2023/12/13 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GPU Gems1 - 14 透视阴影贴图(Perspective Shadow Maps: Care and Feeding) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

開篇先說,這文章好難懂啊,到現在也沒完全弄明白,有大佬的話歡迎指點。這篇大體意思是對Perspective Shadow Maps進行部分優化。GEMS這書這點是真挺蛋疼,很多文章都是對某項技術的優化,那先介紹介紹原來技術嘛,我都不知道原來技術為啥有毛病(當然是咱自己菜雞)上來就給我整優化,完全看不懂。先貼上Perspective Shadow Maps技術的最原始論文鏈接

?http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.449.9505&rep=rep1&type=pdf

一個關于shadow map技術非常好的鏈接,之后有時間得詳細寫一篇關于這個文章的積累

http://www.opengl-tutorial.org/intermediate-tutorials/tutorial-16-shadow-mapping

本文開篇上來又來介紹陰影渲染的兩大流派。

  • 陰影體(shadow volumes)/模板陰影(stencil shadows)
  • 陰影貼圖(Shadow Maps)

之前文章已經介紹過這倆技術流派了,這里就略過了。透視陰影貼圖(Perspective Shadow Maps, PSMs)是由Stamminger和Drettakis 在SIGGRAPH 2002上提出的一種陰影貼圖(Shadow Maps)流派的方法,通過使用在投射后空間(post-projective space)中的陰影貼圖來去除其中的走樣。

The most significant problems of the presented PSM algorithm are these three(PSM算法三個問題):

  • To hold all potential shadow casters inside the virtual camera frustum, "virtual cameras" are used when the light source is behind the camera. This results in poor shadow quality.(虛擬相機技術帶來陰影質量降低)
  • The shadow quality depends heavily on the light position in camera space.(陰影質量很依賴于光源對相機的位置)
  • Biasing problems weren't discussed in the original paper. Bias is a problem with PSMs because the texel area is distributed in a nonuniform way, which means that bias cannot be a constant anymore and should depend on the texel position.(bias問題)

虛擬相機

如以下兩個圖所示,這玩意粗俗來講,意思就是樹木1不在攝像機范圍內,但是光照到這個樹木1投射出來的陰影投到地面后確在攝像機范圍內,這可咋整呢,那就像圖2似的,把攝像機虛擬的往后挪點,把樹木1囊括在攝像機范圍內來解決這個問題。虛擬攝像機這種技術帶來的問題就是陰影質量會降低,因為本來貼近攝像機的物體,比如樹木2,會因為相機向后挪動后在視野中變小,自然會影響其陰影質量。

解決虛擬攝像機的問題可以采用以下辦法:對光源矩陣使用特別的投射變換。如下圖所示,它由一個原始的(非后移過的虛擬相機)攝像機,一個“”逆向“”光源和攝像機后面的物體組成。

?我個人非常粗俗的理解是,該方法構造了一個很特別的矩陣,使得光源經過點1向負無窮發射,之后又轉回來經過234點直至正無窮大。(這塊理解不太好,望大佬指導)

?對虛擬攝像機技術還可以改進的一點是,當后移時,同時使得camera 近平面一同后移。如下圖所示。

?

當光源離unit cube非常近的時候,如果我們僅使用一個shadow map texture,陰影質量會非常低。因為為了保證光源視域要囊括整個unit cube,光源視域的角度會非常大,如下圖所示。因此離光源很近的區域采樣值就會非常少,陰影質量就會降低。有兩個辦法,每個辦法僅解決問題的一部分:單位立方體裁剪法,把光源攝像機對準單位立方體的必要部分;立方體映射法,使用多個紋理來存儲深度信息。

最初的文章沒有討論過偏置(bias)問題。偏置是隨透視陰影貼圖而帶來的問題,因為紋素的面積以不均勻方式分布,這意味著偏置不再是常量,而是與紋素的位置有關。

解決方案:使用在世界空間中的偏置(而且不再分析雙投射矩陣的結果),然后把這個世界空間偏置轉換到投射后空間。(這部分沒怎么理解,望大佬指導)

最后,該方案又提到了緊鄰百分比過濾(percentage-closer filtering ,PCF)優化,之前文章已經詳細記錄過,這里就略過了

【關鍵詞提煉】

?

陰影渲染(Shadow Rendering)

陰影貼圖(Shadow Maps)

透視陰影映射(Perspective Shadow Maps,PSMs)

緊鄰百分比過濾(percentage-closer filtering ,PCF)

單位立方體裁剪法(Unit Cube Clipping)

?

?

總結

以上是生活随笔為你收集整理的GPU Gems1 - 14 透视阴影贴图(Perspective Shadow Maps: Care and Feeding)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。