• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            永遠也不完美的程序

            不斷學習,不斷實踐,不斷的重構……

            常用鏈接

            統計

            積分與排名

            好友鏈接

            最新評論

            總結一下shadowmap的實現

                    花了大概幾周的時間實現了軟陰影。總的來說難度還是比較大的,而且我也走了些彎路,不過也值得,單是寫shader不是很難,但要放到引擎中還是有點難度。shadowmap的原理我就不講了,網上有很多。
                    這里所說的是light space shadowmap。單是shadowmap的實現有兩種:一種是創建浮點紋理存放深度,然后在shader中與當前像素的深度比較。另一種是創建depthstencil紋理,并設為當前的深度緩沖,最后拿這個紋理作為shadowmap。注意,第二種才是真正的nvidia上說的hardwareshadowmap,第一種并不是。我這里說的是通過兩種的比較來總結一下。
                    這兩種方法都有一個共同點:就是要把像素中的坐標轉換到lightviewproj(以燈為視點的投影空間)的紋理坐標。
                    我之前一直是用第一種方法,也參考了nvidia上的hardwareshadowmap和softshadowmap,但問題就出來了,深度一定要自己比較,所以當實現了軟陰影的時候,自己比較就無法看到軟陰影,但不比較,深度又有錯誤,而且depthbias起不到應有的作用。
                    后來改用第二種方法,所有問題都解決了,紋理為D24S8,用tex2DProj就可以自動比較深度,至于為什么能比較,我也不太清楚。如果有高手可以解釋一下就非常感謝了。

            posted on 2010-07-23 16:01 狂爛球 閱讀(4351) 評論(4)  編輯 收藏 引用 所屬分類: 圖形編程

            評論

            # re: 總結一下shadowmap的實現 2010-08-04 16:53 Jean

            N卡和A卡處理Depth/Stencil Texture(DST)很不同,N卡是D24S8,D32,D16這樣的格式,A卡是DF24,DF16這樣的格式,而且采樣時N卡自動實現深度對比,并且提供同Fetch2x2過濾,A卡則需要另寫代碼對比  回復  更多評論   

            # re: 總結一下shadowmap的實現 2010-08-04 18:37 liangairan

            @Jean
            呵呵,應該是高手啊,A卡方面的實現,遇到軟陰影我暫時還不知道如何做。  回復  更多評論   

            # re: 總結一下shadowmap的實現 2012-01-05 23:29 leeco

            推薦你看一下VSM,可以用浮點紋理存放深度,就創建成普通的RenderTarget不需要是深度緩沖區,因為通過VSM可以解決對深度值做硬件線性插值沒有意義的問題。  回復  更多評論   

            # re: 總結一下shadowmap的實現 2012-01-08 10:08 liangairan

            @leeco
            謝謝!我有空研究一下。  回復  更多評論   

            国产精品久久久久久久久久免费| 91久久精品国产成人久久| 精品久久久久成人码免费动漫 | 国产精品丝袜久久久久久不卡 | 午夜精品久久影院蜜桃| 亚洲午夜久久久久久久久久| av无码久久久久不卡免费网站 | 久久人搡人人玩人妻精品首页| 2020久久精品亚洲热综合一本| 国产精品美女久久久久网| 久久天天躁狠狠躁夜夜av浪潮 | 久久综合亚洲鲁鲁五月天| 99国产精品久久| 久久热这里只有精品在线观看| 久久亚洲精精品中文字幕| 亚洲人成无码www久久久| 久久综合欧美成人| 久久精品中文字幕一区| 性高朝久久久久久久久久| 欧美综合天天夜夜久久| 久久精品国产亚洲AV电影| 亚洲人成无码久久电影网站| 999久久久免费国产精品播放| 久久天天躁狠狠躁夜夜avapp| 久久久国产99久久国产一| 久久午夜综合久久| 久久久久久亚洲精品不卡| 国产AⅤ精品一区二区三区久久| 久久久久亚洲av无码专区| 亚洲国产另类久久久精品黑人| 精品国产乱码久久久久软件| 欧洲国产伦久久久久久久| 四虎久久影院| 偷偷做久久久久网站| 久久综合亚洲鲁鲁五月天| 午夜精品久久久久久影视777 | 久久久久亚洲AV无码观看 | 国产V亚洲V天堂无码久久久| 久久午夜羞羞影院免费观看| 99久久国产热无码精品免费| 国产麻豆精品久久一二三|