• <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
            <2007年8月>
            2930311234
            567891011
            12131415161718
            19202122232425
            2627282930311
            2345678


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

            常用鏈接

            留言簿(94)

            隨筆分類(649)

            隨筆檔案(505)

            相冊

            BCB

            Crytek

            • crymod
            • Crytek's Offical Modding Portal

            Game Industry

            OGRE

            other

            Programmers

            Qt

            WOW Stuff

            搜索

            •  

            積分與排名

            • 積分 - 911958
            • 排名 - 14

            最新隨筆

            最新評論

            閱讀排行榜

            評論排行榜

            知識在于積累,了解得多了就是行家。

             

            一點點歷史….

               1995年,3Dfx發(fā)布第一塊消費級的3D硬件加速圖形卡開始,計算機圖形技術(shù)和相關(guān)的硬件技術(shù)都取得了重大進展。雖然這類圖形卡在渲染功能上有諸多限制,但為開發(fā)者打開了一片新的天地,終結(jié)了只能依靠軟件解決方案進行渲染的時代。其結(jié)果是讓實時3D圖形和游戲都變得更加真實。

                   此后,接下來的幾代硬件都在性能和功能方面有了重大突破。但是,由于受到硬件固定管線構(gòu)架(fixed-pipeline architecture)的限制,仍然有很多約束,開發(fā)者被強制只能通過使用和改變渲染狀態(tài)來控制渲染過程,獲得最終的輸出圖形。

                    固定管線構(gòu)架功能上的局限性,限制了開發(fā)者創(chuàng)建所需效果的能力。總的來說,它所產(chǎn)生的圖形都不夠真實。另一方面,用于電影CG渲染的高端軟件渲染構(gòu)架則發(fā)明了一些讓渲染更加逼真的方法。Pixar Animation Studios開發(fā)了一門稱為RenderMan的著色語言。它的目的是讓藝術(shù)家和開發(fā)者使用一門簡單但強大的編程語言來完全控制渲染過程。RenderMan可以創(chuàng)建出高質(zhì)量的圖形,從照片級的真實效果,到卡通風(fēng)格的非真實渲染效果都可以實現(xiàn)。被廣泛用于當今的電影中,包括著名的動畫Toy StoryA Bug’s Life

                   隨著處理器芯片制造技術(shù)的革新,和處理能力的增強,RenderMan的思想逐漸影響并延伸到了消費級圖形硬件。DirectX 8的發(fā)布引入了頂點(vertex)和像素著色器(pixel shader1.0 以及1.1版本。雖然這兩個版本的著色模型靈活性不高,同時缺乏流程控制等一些功能。但是,這第一步,給予了藝術(shù)家和開發(fā)者長久以來所夢想的,創(chuàng)造奪目的、真實的圖形的能力。消費級圖形卡所生產(chǎn)的圖形終于能和好萊塢電影工作室所渲染出的圖形相比了。
                   接下來的幾年間,圖像硬件和3D API無論在功能和性能上都取得了巨大飛躍,甚至打破了摩爾定律中的技術(shù)進步速率。隨著DirectX 9.0 SDK以及最新的一代圖形卡的發(fā)布,比如NvidiaGeforce FX系列和ATIRadeon 9800系列,頂點和像素著色器發(fā)展到了2.02.x版本。以及隨后的3.x版本。

            SM-->shader model

            Shader Model(在3D圖形領(lǐng)域常被簡稱SM)就是“優(yōu)化渲染引擎模式”。事實上,Shader(渲染或稱著色)是一段能夠針對3D對象進行操作、并被GPU 所執(zhí)行的程序。通過這些程序,程序員就能夠獲得絕大部分想要的3D圖形效果。在一個3D場景中,一般包含多個Shader。這些Shader中有的負責對 3D對象表面進行處理,有的負責對3D對象的紋理進行處理。
                    早在微軟發(fā)布DirectX 8時,Shader Model的概念就出現(xiàn)在其中了,并根據(jù)操作對象的不同被分為對頂點進行各種操作的Vertex Shader(頂點渲染引擎)和對像素進行各種操作的Pixel Shader(像素渲染引擎)。
                    時至微軟發(fā)布DirectX 10.1之后,Shader Model的版本已經(jīng)有五個版本了:分別是Shader Model1.0(DirectX8.0)、Shader Model2.0(DirectX9.0b)、Shader Model3.0(DirectX9.0c)、Shader Model4.0(DirectX10)和Shader Model4.1(DirectX10.1)。
                    在Shader Model發(fā)展史上,從SM 1.0進化到SM 2.0稱得上是真正意義上的技術(shù)革命,后者賦予了顯示芯片強大的能力,人們在游戲中也領(lǐng)略到前所未有的視覺體驗,例如水面光影和霧化等特效的出現(xiàn)使游戲場景更真實。相對而言,SM 2.0到SM 3.0的改進不如SM 1.0到SM 2.0的變化大,SM 3.0除了支持32bit浮點運算是亮點外,其他特效用SM 2.0也可以完成。相比原先的Shader Model 3.0,Shader Model 4.0最大指令數(shù)從512條增加到了64000條;臨時暫存器數(shù)量也從原先的32個增加到驚人的4096個;允許同時對128個Texture進行操作 (Shader Model 3.0只允許16個);材質(zhì)texture格式變?yōu)橛布С值腞GBE格式,其中的"E"是Exponent的省略,是RGB共同的說明,這在HDR的處理上有很大的作用,摒棄了以往需要專門decoding處理HDR渲染的流程。 另外,對于紋理的尺寸Shader Model4.0也有驚人的提升,8192x8192的最高紋理分辯率比原先最高2048x2048的分辯率要高出4倍。
                    Shader Model 4.0另一個重大變化就是在VS和PS之間引入了一個新的可編程圖形層----幾何著色器(Geometry Shader)。原來的Vertex Shader和Pixel Shader只是對逐個頂點或像素進行處理,而新的Geometry Shader可以批量進行幾何處理,快速的把模型類似的頂點結(jié)合起來進行運算。雖然其操作不會象Vertex Shader那樣完整,只是處理器單個頂點的相關(guān)函數(shù)操作,但是這種操作卻可以確定整個模型的物理形狀。這將大大加速處理器速度,因為其它Shader單元將不再去需要判定數(shù)據(jù)所存在的位置,而只是需要簡單的為特定區(qū)域進行操作就可以了。Geometry Shader可以把點、線、三角等多邊形聯(lián)系起來快速處理、同時創(chuàng)造新的多邊形,在很短時間內(nèi)直接分配給其他Shader和顯存而無需經(jīng)過CPU,煙霧、爆炸等復(fù)雜圖象不再需要CPU來處理。從而極大的提高了CPU速度和顯卡速度。游戲圖象中可以出現(xiàn)許多精細場景,如不銹鋼茶壺上清楚的反射出周圍物體、超精細的人物皮膚等 


            Shader Model是什么意思

              Shader Model在PC游戲和顯卡的發(fā)展史上扮演了非常關(guān)鍵的一個角色,它徹底解放了顯示芯片,使得技術(shù)人員可以用它去創(chuàng)造接近真實環(huán)境的3D世界。換句話說,逼真的場景、細節(jié)的毫發(fā)畢現(xiàn)、像看電影那樣玩游戲已成為現(xiàn)實。無怪乎人們開始把Shader Model版本的高低當作衡量顯示芯片價值的重要指標之一。

            在Shader Model發(fā)展史上,從SM 1.0進化到SM 2.0稱得上是真正意義上的技術(shù)革命,后者賦予了顯示芯片強大的能力,人們在游戲中也領(lǐng)略到前所未有的視覺體驗,例如水面光影和霧化等特效的出現(xiàn)使游戲場景更真實。相對而言,SM 2.0到SM 3.0的改進不如SM 1.0到SM 2.0的變化大,SM 3.0除了支持32bit浮點運算是亮點外,其他特效用SM 2.0也可以完成。例如,GeForce 6系列顯卡上市時曾大力宣傳SM 3.0和HDR(高動態(tài)范圍)技術(shù),這無形之中就給人一種SM 2.0不能實現(xiàn)HDR或者HDR效果差的錯覺。其實在《半條命2∶失落的海灘》中,我們發(fā)現(xiàn)使用SM 2.0b的Radeon X800顯卡對HDR的支持就很好,只不過SM 2.0的先天不足限制了這些特效的應(yīng)用罷了。

              我們不可否認,SM 3.0的誕生讓微軟徹底統(tǒng)治了娛樂圖形領(lǐng)域。尤其是它更新了統(tǒng)一的渲染語言——全新的HLSL高級程序語言,這大大簡化了3D程序的編寫工作,同時公正的態(tài)度使得程序員不必為NVIDIA或ATI單獨考慮優(yōu)化措施。微軟通過DirectX和HLSL從根本上控制了圖形技術(shù)未來的發(fā)展方向,而NVDIA和 ATI為了取得更大的市場份額,不得不全力支持。因此從某種意義上來說,真正統(tǒng)治娛樂圖形領(lǐng)域的霸主不是NVIDIA,也不是ATI,而是微軟。小編這里建議現(xiàn)階段想購買顯卡的游戲愛好者,最好選擇支持SM 3.0的產(chǎn)品,因為采用SM 3.0特性的游戲會越來越多。
              毋庸置疑,游戲永遠是以顯卡為首的電腦硬件更新?lián)Q代的“催化劑”。隨著《分裂細胞3》、《孤島驚魂》(即FarCry)、《帝國時代3》、《使命召喚2》等支持Shader Model 3.0游戲的陸續(xù)問世,GeForce FX系列或Radeon 9500系列之前的顯卡也面臨著“下崗”的命運。究竟什么是Shader Model?它給游戲帶來了哪些變化呢?
            Shader Model帶來可編程革命
              經(jīng)歷過S3 Trio64時代的DIYer一定還記得,當時所有的游戲都運行在DOS實模式下,3D游戲要調(diào)用這些特效必須借助顯卡廠商特制的API(應(yīng)用程序接口)才行。為了在競爭中取勝,顯卡制造商開始瘋狂地為產(chǎn)品增加各種硬件特效,如Alpha混合、平面著色、透明化處理等等。
              這樣的特效競賽持續(xù)沒多久,人們便發(fā)現(xiàn),無論怎么增加特效都不能滿足游戲開發(fā)者的需求。而且由于缺乏統(tǒng)一的API,無法充分利用紛繁復(fù)雜的特效。當時的游戲為了盡量支持市場上的各種硬件,不得不同時為每一塊顯卡準備相應(yīng)的執(zhí)行程序,這對游戲開發(fā)商來說無疑是個噩夢。為了使顯卡發(fā)展擺脫特效競賽的怪圈,設(shè)計一款能自由編程的顯示芯片便成了研發(fā)人員迫在眉睫的任務(wù)。不過,在實現(xiàn)可編程之前需要統(tǒng)一的API。好在微軟的DirectX開始逐步成熟,OpenGL也已相當完善。顯卡制造商們只要直接使用這兩種API就能實現(xiàn)所有的硬件功能。
              GeForce 256的誕生拉開了GPU時代的序幕。由于在GPU內(nèi)部首次引入T&L(幾何轉(zhuǎn)換和光照處理)引擎,因此使得顯示核心能夠更快地實現(xiàn)各種復(fù)雜的運算,而相應(yīng)的DirectX 7也在3D應(yīng)用中開始扮演越來越重要的角色。既然擺脫了CPU的依賴,顯卡就有了實現(xiàn)可編程的基礎(chǔ),伴隨著DirectX 8的發(fā)布,GeForce 3系列產(chǎn)品首次向世人展示了GPU的可編程能力,吃力不討好的固定特效時代一去不復(fù)返。
            什么是Shader Model
            在3D圖形領(lǐng)域,Shader被稱為“渲染引擎”或“著色器”,Shader Model(以下簡稱SM)就是“渲染引擎模式”了。事實上,Shader是一段能夠針對3D對象進行操作、并被GPU所執(zhí)行的程序。通過這些程序,程序員就能夠獲得絕大部分想要的3D圖形效果。在一個3D場景中,一般包含多個Shader。這些Shader中有的負責對3D對象表面進行處理,有的負責對 3D對象的紋理進行處理。
              早在微軟發(fā)布DirectX 8時,Shader Model的概念就出現(xiàn)在其中了,并根據(jù)操作對象的不同被分為對頂點進行各種操作的Vertex Shader(頂點渲染引擎)和對像素進行各種操作的Pixel Shader(像素渲染引擎)。


            HDR與Shader Model


            posted on 2008-10-22 06:13 七星重劍 閱讀(1604) 評論(7)  編輯 收藏 引用 所屬分類: Game Graphics

            FeedBack:
            # re: 圖形學(xué)掃盲--(1)SM(Shader Model)解釋及追根溯源 2008-10-22 09:18 momor
            看不到圖片  回復(fù)  更多評論
              
            # re: 圖形學(xué)掃盲--(1)SM(Shader Model)解釋及追根溯源 2008-10-22 10:16 七星重劍
            @momor
            點鏈接看吧  回復(fù)  更多評論
              
            # re: 圖形學(xué)掃盲--(1)SM(Shader Model)解釋及追根溯源 2008-10-22 18:21 空明流轉(zhuǎn)
            pixar  回復(fù)  更多評論
              
            # re: 圖形學(xué)掃盲--(1)SM(Shader Model)解釋及追根溯源 2008-10-22 20:54 七星重劍
            @空明流轉(zhuǎn)
            ?  回復(fù)  更多評論
              
            # re: 圖形學(xué)掃盲--(1)SM(Shader Model)解釋及追根溯源 2008-11-18 20:49 七星重劍
            @空明流轉(zhuǎn)
            今天終于知道老大說pixar是為什么了
            謝謝老大提醒啊  回復(fù)  更多評論
              
            # re: 圖形學(xué)掃盲--(1)SM(Shader Model)解釋及追根溯源 2008-11-18 20:49 七星重劍
            @空明流轉(zhuǎn)
            已經(jīng)增加了pixar的部分了  回復(fù)  更多評論
              
            # re: 圖形學(xué)掃盲--(0)SM(Shader Model)解釋及追根溯源 2014-11-05 14:07 PeakFish
            樓主你說的這些都是啥意思啊  回復(fù)  更多評論
              
            精品久久久无码人妻中文字幕豆芽| 成人精品一区二区久久| 久久精品成人免费看| 日韩精品久久无码人妻中文字幕| 亚洲欧洲精品成人久久曰影片| 亚洲午夜无码AV毛片久久| 18岁日韩内射颜射午夜久久成人 | 久久夜色精品国产噜噜噜亚洲AV| 久久久国产亚洲精品| 久久久久久久精品妇女99| 色综合久久久久久久久五月| 国产精品99久久久久久猫咪 | 亚洲乱亚洲乱淫久久| 国内精品欧美久久精品| 国产A三级久久精品| 品成人欧美大片久久国产欧美...| 嫩草影院久久国产精品| 97视频久久久| 韩国三级中文字幕hd久久精品| 香蕉久久AⅤ一区二区三区| 久久中文骚妇内射| 色综合久久最新中文字幕| 久久婷婷五月综合成人D啪| 国内精品久久久久久野外| 久久www免费人成看国产片| 99久久精品免费看国产一区二区三区 | 2021国内久久精品| 精品久久久久久无码中文字幕一区| 久久国产精品久久精品国产| 欧美大战日韩91综合一区婷婷久久青草 | 久久热这里只有精品在线观看| 9久久9久久精品| 欧美噜噜久久久XXX| 亚洲一本综合久久| 无码精品久久久久久人妻中字| 久久综合综合久久97色| 亚洲色大成网站www久久九| 精品国产一区二区三区久久蜜臀| 亚洲中文精品久久久久久不卡| 91精品国产综合久久四虎久久无码一级 | 亚洲国产成人精品91久久久|