• <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>
            隨筆 - 505  文章 - 1034  trackbacks - 0
            <2008年3月>
            2425262728291
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345


            子曾經(jīng)曰過:編程無他,唯手熟爾!

            常用鏈接

            留言簿(94)

            隨筆分類(649)

            隨筆檔案(505)

            相冊(cè)

            BCB

            Crytek

            • crymod
            • Crytek's Offical Modding Portal

            Game Industry

            OGRE

            other

            Programmers

            Qt

            WOW Stuff

            搜索

            •  

            積分與排名

            • 積分 - 914466
            • 排名 - 14

            最新隨筆

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            入門效果之馬賽克

            接下來我們完成一個(gè)更加常見的效果馬賽克。圖片的馬賽克就是把圖片的一個(gè)相當(dāng)大小的區(qū)域用同一個(gè)點(diǎn)的顏色來表示。可以認(rèn)為是大規(guī)模的降低圖像的分辨率,而讓圖像的一些細(xì)節(jié)隱藏起來。

            HLSL代碼實(shí)現(xiàn)馬賽克是非常簡(jiǎn)單的。但是同樣的需要一些額外的步驟。

                第一步就是先把紋理坐標(biāo)轉(zhuǎn)換成圖像實(shí)際大小的整數(shù)坐標(biāo)。接下來要把圖像這個(gè)坐標(biāo)量化---比如馬賽克塊的大小是8x8象素。那么我們可以用下列方法來得到馬賽克后的圖像采樣值,假設(shè)[x.y]為圖像的整數(shù)坐標(biāo):

            [x,y]mosaic = [ int(x/8)*8 , int(y/8)*8].

             

            得到這個(gè)坐標(biāo)后只要用相反的方法,把整數(shù)坐標(biāo)轉(zhuǎn)換回到0-1.0的紋理坐標(biāo)。

            具體的馬賽克效果代碼如下:

             

             

             

            經(jīng)過這個(gè)Shader處理后的圖像結(jié)果如下:

             

             

            圖:馬賽克處理效果

            讀者可能會(huì)發(fā)現(xiàn)這個(gè)馬賽克太普通了,確實(shí)它不夠新穎。下面我們來改良一下,我們希望達(dá)到這樣一個(gè)效果:馬賽克區(qū)域不是方的,而是圓的,圓形區(qū)域以外,依舊用圖像原來的顏色覆蓋。這樣需要改變一下代碼。

            首先求出原來馬賽克區(qū)域的正中心(原來是左上角):然后計(jì)算圖像采樣點(diǎn)到這個(gè)中心的距離,如果在馬賽克圓內(nèi),就用區(qū)域的中心顏色,否則就用原來的顏色。改良后的代碼如下,這里把馬賽克區(qū)域大小調(diào)節(jié)成16x16。這樣效果更明顯。

            這個(gè)代碼相對(duì)上面的代碼復(fù)雜了一些,加了一個(gè)分支if/else。注意,GPU是個(gè)高度并行的處理器,過多分支會(huì)降低Shader的運(yùn)行速度。這個(gè)改良的馬賽克效果如下

            :  改良后的馬賽克效果

             

             

            posted on 2007-11-13 01:45 七星重劍 閱讀(1129) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Game GraphicsHLSL&ShaderMonkey
            很黄很污的网站久久mimi色| 人妻精品久久无码专区精东影业| 青青草国产精品久久| 久久天堂电影网| 一级a性色生活片久久无少妇一级婬片免费放 | 久久精品人人做人人妻人人玩| 99国产欧美精品久久久蜜芽| 久久久久婷婷| 99久久99这里只有免费的精品| 久久综合给合综合久久| 91久久精品91久久性色| 中文字幕精品久久久久人妻| 精品久久777| 色综合久久久久综合体桃花网| 国产精品女同一区二区久久| 人妻无码αv中文字幕久久琪琪布| 岛国搬运www久久| 亚洲va久久久噜噜噜久久男同| 久久久久一本毛久久久| 久久91精品久久91综合| 伊人久久大香线蕉综合影院首页| 狠狠色伊人久久精品综合网 | 国产三级精品久久| 久久精品国产亚洲av麻豆小说| 久久av高潮av无码av喷吹| 国产精品久久久久久| 久久久久亚洲AV无码网站| 久久无码高潮喷水| 日本精品一区二区久久久| 国产福利电影一区二区三区久久老子无码午夜伦不 | 亚洲国产成人久久精品99 | 人妻丰满AV无码久久不卡| 亚洲&#228;v永久无码精品天堂久久 | 亚洲AV乱码久久精品蜜桃| 久久国内免费视频| 武侠古典久久婷婷狼人伊人| 国产精品内射久久久久欢欢| 精品欧美一区二区三区久久久| 97久久精品人人澡人人爽| 国产2021久久精品| 精品国产91久久久久久久a|