• <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>

            0.1 狀態對象介紹

                     D3D10的渲染管線被分成5個階段(stage),每個階段都有許多的狀態(state),不同的狀態決定了階段的不同特征。當渲染不同的物體時,通常需要切換某些個階段的某些狀態。在D3D9中,沒有明顯的階段劃分,所有的狀態設置都是直接針對渲染管線的設置,比如頂點格式、渲染狀態、紋理階段狀態等,程序可以單獨修改每一個狀態。D3D10 用階段狀態對象來包裝一組相關的狀態。對渲染管線的修改只能通過狀態對象來進行,而不能直接修改單個狀態。最多可以創建4096個狀態對象,切換狀態對象而不是直接修改狀態能大大減少渲染管線的狀態切換開銷。
                     狀態對象通過幾個途徑來提升性能:在狀態對象創建時進行狀態的驗證,可以在硬件中緩存狀態對象,減少狀態切換函數調用時的參數傳遞。狀態對象是不可以修改的,應該在程序初始化時創建所有可能用到的狀態對象。或者將狀態寫入到Effect中,Effect系統會自動高效地管理狀態對象的創建和銷毀。

            輸入布局(Input-Layout)狀態
                  輸入布局狀態決定了輸入集成器(Input Assembler)階段如何解析輸入緩沖中的數據。這組狀態由輸入布局狀態對象來包裝,輸入布局狀態對象用 ID3D10InputLayout 接口來表示,使用 ID3D10Device::CreateInputLayout來創建,使用ID3D10Device::IASetInputLayout來應用到管線中。
            D3D9中使用FVF或者頂點聲明結構來定義輸入的頂點緩沖格式,D3D10中則使用輸入元素結構(D3D10_INPUT_ELEMENT_DESC)來定義。這個結構和頂點聲明結構很類似。

            光柵器(Rasterizer)狀態
                  光柵器狀態包括填充(fill)模式,精選(cull)模式,裁剪(clipping),多重采樣狀態等,決定光柵化階段的特征。完整的狀態列表在D3D10_RASTERIZER_DESC結構中描述。光柵器狀態對象用 ID3D10RasterizerState 接口來表示。使用ID3D10Device::CreateRasterizerState來創建,使用ID3D10Device::RSSetState來應用到管線中。

            深度模版狀態
                  深度模版狀態設定輸出合并階段是進行的深度模版測試狀態。這組狀態用D3D10_DEPTH_STENCIL_DESC結構來描述。深度模版狀態對象用 ID3D10DepthStencilState 接口來表示。使用ID3D10Device::CreateDepthStencilState來創建,使用ID3D10Device::OMSetDepthStencilState來應用到管線中。

            混合狀態
                  設定輸出合并階段的混合特性。用ID3D10BlendState接口來表示,用ID3D10Device::CreateBlendState.來創建,用ID3D10Device::OMSetBlendState來應用。

            取樣器狀態
                  取樣器對象用來在著色器階段對紋理內存進行取樣,用D3D10_BLEND_DESC結構來描述。在D3D10中,取樣器不再和一個具體的紋理綁定在一起,而是可以對任意給的紋理進行取樣。用ID3D10SamplerState接口來表示。用ID3D10Device::CreateSamplerState.來創建。用 ID3D10Device::VSSetSamplers, ID3D10Device::GSSetSamplers, 或 ID3D10Device::PSSetSamplers.來設定到某個著色器階段。


            posted on 2007-08-31 13:33 隨便寫寫 閱讀(790) 評論(1)  編輯 收藏 引用 所屬分類: DirectX 10 學習與研究

            評論

            # re: 0.1 狀態對象介紹 2012-02-24 16:13 preboy

            謝謝樓主,辛苦了  回復  更多評論   

            導航

            <2012年2月>
            2930311234
            567891011
            12131415161718
            19202122232425
            26272829123
            45678910

            統計

            常用鏈接

            留言簿(1)

            隨筆分類(30)

            隨筆檔案(16)

            文章分類(18)

            文章檔案(9)

            鏈接

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久99精品久久久久久秒播| 18岁日韩内射颜射午夜久久成人| 青青草原综合久久大伊人导航| 久久亚洲国产精品一区二区| 久久综合九色综合网站| 久久99精品久久久久久hb无码| 亚洲精品无码久久久久久| 亚洲精品美女久久久久99| 久久不射电影网| 亚洲精品成人久久久| 久久国产精品一国产精品金尊 | 国产成人精品久久| 狠狠色噜噜色狠狠狠综合久久| 久久国产乱子精品免费女| 午夜精品久久久久成人| 国产成人精品久久一区二区三区av | 品成人欧美大片久久国产欧美...| 韩国三级中文字幕hd久久精品| 国产精品无码久久综合网| 狠狠色丁香久久婷婷综合蜜芽五月| 久久久国产精品亚洲一区| 久久丫忘忧草产品| 久久婷婷午色综合夜啪| 久久精品成人免费观看97| 久久亚洲国产欧洲精品一| 亚洲AV日韩AV天堂久久| 麻豆AV一区二区三区久久| 麻豆精品久久久久久久99蜜桃| 老司机午夜网站国内精品久久久久久久久 | 伊人久久大香线蕉影院95| 精品久久久久久久久中文字幕| 亚洲国产精品久久久久婷婷软件| 国产成人久久AV免费| 久久夜色精品国产亚洲av| 97久久国产综合精品女不卡| 久久精品国内一区二区三区 | 久久99国产精品一区二区| 国产亚洲美女精品久久久久狼| 人妻精品久久久久中文字幕| 色欲av伊人久久大香线蕉影院| 久久影院综合精品|