• <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>
            基本對象著色
            材質(zhì),簡單的來講就是定義了被賦于此材質(zhì)的對象如何反射光。ogre中的光照采用局部光照模型,這意味著,對計算有影響的因素有:光照的角度與光的顏色,相機的視角,對象的材質(zhì)。ogre支持四種類型用來描述材質(zhì)的顏色,表述了光照對它的影響:環(huán)境光,漫反射,發(fā)散,鏡面反射。環(huán)境光是對全局光照的近似,漫反射是指當物體被光照射后在物體各方向上反射的光的顏色。發(fā)散指物體本身自發(fā)光的顏色。鏡面反射,指的是在某個視角看到的被光反射出的“高光”。鏡面高光有兩個參數(shù)可以控power,shininess.power用來控制“加亮點”的尺寸(影響的范圍越大)。而shininess值越大的表面,高光越容易聚集。
            紋理映射
            通過紋理坐標,用一張2D圖片給3D對象著色的技術(shù)。
            可編程著色
            通過寫高級或低級的頂點程序,片段程序代替固定管線的功能。支持可編程圖形硬件也可以當做固定函數(shù)流水線硬件來用。可編程硬件允許更靈活的計算頂點的的顏色,位置等。紋理也可用于可編程硬件。紋理中包含的數(shù)據(jù),不僅僅可以表示顏色,也可以表示任何其他程序員知道如何處理的數(shù)據(jù)。
            Batching
            材質(zhì)與mesh之間的關(guān)系所帶來的最大影響是渲染狀態(tài)的改變。ogre中的渲染單元大多數(shù)情況下指的是renderable,它是SubEntity的父類。渲染單元這個概念的重要性在于,正是在這里,ogre將調(diào)用顯卡驅(qū)動開始并且會結(jié)束“畫操作”。一次畫操作(batch),指的是清除顏料(color,texture,etc)與材料(vertexof display lists),從頭開始一組新的操作的過程。就像一個畫家每次在畫板上做畫時會洗凈他的調(diào)色板一樣。對于3D硬件來講,這個過程包括發(fā)送新的頂點列表與數(shù)據(jù)索引到GPU(或者引用還存在的),用紋理,顏色,以及光柵化這些頂點組成的面需要的一些元數(shù)據(jù)來設置GPU。因此,最有效率的做法是一次盡可能多的把
            使用同樣渲染數(shù)據(jù)的頂點發(fā)送到GPU進行處理。ogre會盡量減小狀態(tài)改變帶來的影響,但它遵重你如何構(gòu)成一個renderable的決定。假如你有一個模型它有20個塊組成,它們都使用相同的材質(zhì),這時應該把他們整合到相同的renderable中去,而不是分20次batch發(fā)送到顯卡。每幀的batch數(shù)會有個上限。
            材質(zhì)克隆
            ogre中的材質(zhì)是共享的。當你從材質(zhì)管理器獲得一個指針,它與從使用這種材質(zhì)的其他對象所擁有的材質(zhì)
            指針是相同的。因此改變一處會影響其他,為了避免影響其他應該克隆材質(zhì)。
            Technique & Scheme
            Technique允許針對不同的硬件平臺定制不同的材質(zhì)。Scheme允許對特定一組技術(shù)進行更一般化的描述。Ogre選擇技術(shù)時有明確的順序。首先,它尋找屬于某個命名Scheme中的技術(shù)。然后在選好的scheme中查找那些應用了特定材質(zhì)lod的技術(shù)。最后在這些技術(shù)列表中,選擇最能適應當前硬件設置的技術(shù)。缺省,所有的技術(shù)屬于細節(jié)級別0,它對應最高細節(jié)級別。
            Material LoD
            層次細節(jié)這個術(shù)語常用來討論隨場景中的物體的幾何復雜性是相機與物體之間距離的函數(shù)。類似的概念被應用到材質(zhì)定義上。ogre提供了在哪個層次細節(jié)上使用特定技術(shù)的手段。可以在材質(zhì)中定義層次細節(jié)發(fā)生變化時的距離,賦于材質(zhì)中的每個技術(shù)一個細節(jié)索引。每個細節(jié)索引也可以有多個技術(shù),用來支持scheme或是硬件能力fallback。
            材質(zhì)組成
            一個materail由一個或多個technique組成,后者又由一個或多個pass組成,一個時刻只有一個technique是活動的。pass對于在GPU上執(zhí)行畫操作的renderable來講,是完整的原子渲染狀態(tài)。假如選擇的技術(shù)有三pass,那么每幀會對renderable進行三次畫操作。pass可以引用紋理單元定義,而不必包含任何紋理單元定義。
            紋理單元
            ogre materail中的紋理單元實際引用GPU上的texture sampler.多數(shù)現(xiàn)代圖形硬件有多個texture sampler,
            ogre支持的硬件至少有一個有效的texture sampler。紋理單元包括一個紋理的引用,可以來自一個磁盤文件,或是運行時渲染,或是來自外部視頻流。可以在每個pass中指定多個紋理單元。ogre會檢測硬件支持的能力,必要時把一個pass折分成多個pass。舉例來說,假設pass中指定6個紋理單元,而硬件只支持4個,那么ogre會把這個pass拆分成兩個,對這兩個pass執(zhí)行紋理混合以達到相同的設計功能。紋理通常保存在video memory中,直到它們不再需要。ogre不會每次需要時都通過總線傳輸紋理,除非紋理經(jīng)常地從
            video memory中剔除。(這時發(fā)生了紋理震蕩,原因是有太多或太大的紋理同時存在于vedio memory中)。
            紋理壓縮
            現(xiàn)代圖形硬件支持壓縮紋理。ogre只是簡單地把紋理按原樣傳送他們到圖形硬件中去,它不會壓縮紋理。
            對于那些壓縮過的紋理,也不必事先處理它,如果硬件不支持壓縮紋理,ogre會在運行時解壓縮。
            實體
            在渲染期間,Entity主要作為subentities的容器來用,subentities是實際的渲染單元(renderable)。
            subentity與submesh有一一對應的關(guān)系,后者提供原始的材質(zhì)引用。概念上來講,entity(subentity)提供了對象的渲染屬性,而mesh(submesh)提供了對象的結(jié)構(gòu)屬性。
            posted on 2007-03-13 11:31 清源游民 閱讀(2585) 評論(1)  編輯 收藏 引用 所屬分類: OGRE

            FeedBack:
            # re: 《Pro Ogre 3D Programming》 讀書筆記 之 第六章 材質(zhì) 概念
            2007-03-24 12:53 | 高檔
            《Pro Ogre 3D Programming》電子書的下載地址:
            http://www.freebook.googlepages.com/page2:computergamesbookseries  回復  更多評論
              
            <2007年3月>
            25262728123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            留言簿(35)

            隨筆分類(78)

            隨筆檔案(74)

            文章檔案(5)

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            久久久精品人妻一区二区三区蜜桃 | 久久久久99精品成人片试看| 亚洲伊人久久精品影院| 亚洲精品无码久久久久久| 久久亚洲精品视频| 亚洲国产精品嫩草影院久久| 人妻精品久久无码专区精东影业| 精品国产乱码久久久久久1区2区| 久久se精品一区二区影院| 日韩精品久久久久久免费| 久久久精品国产亚洲成人满18免费网站 | 亚洲狠狠婷婷综合久久久久| 国产精品久久成人影院| 婷婷久久五月天| 国产毛片久久久久久国产毛片| 亚洲国产另类久久久精品黑人| 999久久久免费国产精品播放| 囯产精品久久久久久久久蜜桃 | 成人a毛片久久免费播放| 精品一二三区久久aaa片| 久久精品亚洲精品国产欧美| 精品国产一区二区三区久久| 久久久久亚洲AV无码专区首JN| 久久精品国产亚洲精品| 狠狠精品干练久久久无码中文字幕| 欧美黑人又粗又大久久久| 99久久国产精品免费一区二区 | 久久成人小视频| 久久免费视频一区| 国产精品九九久久精品女同亚洲欧美日韩综合区 | 99久久99久久精品国产| 97超级碰碰碰久久久久| 久久国产精品77777| 粉嫩小泬无遮挡久久久久久| 久久亚洲精品国产精品| 久久久久久国产精品免费无码 | 久久―日本道色综合久久| 97久久精品午夜一区二区| 久久久久亚洲AV无码专区体验| 麻豆一区二区99久久久久| 精品蜜臀久久久久99网站|