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

            永遠(yuǎn)也不完美的程序

            不斷學(xué)習(xí),不斷實(shí)踐,不斷的重構(gòu)……

            常用鏈接

            統(tǒng)計(jì)

            積分與排名

            好友鏈接

            最新評(píng)論

            渲染流程要放到渲染物外面的地方

                   研究ogre會(huì)發(fā)現(xiàn),整個(gè)渲染流程是放到了scenemanager里面實(shí)現(xiàn),而不是放到具體的渲染物里面。這樣做的好處是:所有渲染物在場(chǎng)景中統(tǒng)一了渲染流程,而且比放到渲染物內(nèi)更靈活。舉個(gè)例子,假如渲染物要在某個(gè)特定環(huán)境(假如是某個(gè)rendertarget)下渲染,而且慢慢旋轉(zhuǎn)。這時(shí)沒(méi)有場(chǎng)景,沒(méi)有場(chǎng)景結(jié)點(diǎn),但渲染物的渲染流程卻寫(xiě)在了渲染物內(nèi)部,因此,所有的矩陣變換對(duì)渲染物都起不了作用。這時(shí)怎么辦呢?是要修改渲染物的渲染函數(shù),還是為這個(gè)rendertarget添加一些場(chǎng)景的屬性,能讓這個(gè)渲染物走正常的流程呢?所以問(wèn)題就產(chǎn)生了,把渲染流程寫(xiě)死在渲染物內(nèi)是不好的。
                   根據(jù)研究看到,ogre的整個(gè)渲染流程寫(xiě)在scenemanager就避免了上述的問(wèn)題的產(chǎn)生。所以在引擎設(shè)計(jì)時(shí),盡量把所有的渲染物的渲染流程提取到外面進(jìn)行,而不要寫(xiě)死在里面。
                   渲染流程大概如下: 
                    1、設(shè)置世界矩陣。
                    2、提取渲染物的材質(zhì),走多pass流程。
                    3、設(shè)置渲染物的紋理等。
                    4、設(shè)置渲染物在當(dāng)前pass的渲染狀態(tài)。(包括光照,gpu program等)
                    5、提交頂點(diǎn)數(shù)據(jù)(SetStreamSource)。
                    6、渲染(Draw)。

            posted on 2010-06-22 17:07 狂爛球 閱讀(2206) 評(píng)論(2)  編輯 收藏 引用 所屬分類: 圖形編程

            評(píng)論

            # re: 渲染流程要放到渲染物外面的地方 2010-06-22 21:21 小時(shí)候可靚了

            寫(xiě)在場(chǎng)景管理里面有個(gè)好處就是可以很容易提取場(chǎng)景相關(guān)的信息。但是如果想要更靈活,可以再單獨(dú)出一個(gè)"RenderControl"來(lái),它專門負(fù)責(zé)渲染。畢竟場(chǎng)景管理和圖形分開(kāi)更有好處。 而對(duì)于一些高級(jí)效果的實(shí)現(xiàn),則不必像OGRE那樣和場(chǎng)景掛得很死。反之,可以在RenderControl里面做特定的效果器。 這樣對(duì)于場(chǎng)景管理的升級(jí)和改動(dòng)都不需要?jiǎng)佑脠D形層的東西。而圖形層的升級(jí)也不需和場(chǎng)景管理掛鉤。---- 畢竟有些是直接做3DMMO,而有些是用3D來(lái)做2D,管理方式多有不同。。。另外,效果器也可以通過(guò)直接用材質(zhì)文件來(lái)配置,只是這樣材質(zhì)文件就需要包含特定的信息。并且你的RenderControl應(yīng)該根據(jù)不同的材質(zhì)決定繪制內(nèi)容(如是否多PASS,硬件是否支持等)。 這是我們工作中采用的做法,歡迎交流!  回復(fù)  更多評(píng)論   

            # re: 渲染流程要放到渲染物外面的地方 2010-06-23 13:11 liangairan

            @小時(shí)候可靚了
            謝謝你的交流,我會(huì)嘗試一下!  回復(fù)  更多評(píng)論   

            大蕉久久伊人中文字幕| 1000部精品久久久久久久久| 久久久婷婷五月亚洲97号色| 欧美国产精品久久高清| 久久精品嫩草影院| 精品久久一区二区| www.久久热| 国产精品久久永久免费| 国产欧美久久久精品| 狠狠色丁香久久婷婷综合五月| 日韩精品久久久久久久电影蜜臀| 久久精品卫校国产小美女| 日本五月天婷久久网站| 久久人人爽人人爽人人片AV不 | 99国内精品久久久久久久| 91精品国产综合久久久久久| 蜜臀av性久久久久蜜臀aⅴ麻豆| 久久99久久99精品免视看动漫| 伊人久久大香线蕉av不卡| 色婷婷综合久久久久中文一区二区| 国产成人精品久久| 久久精品国产亚洲AV高清热| 国产高潮国产高潮久久久| 国产成人精品久久二区二区| 国产精品免费久久久久影院 | a级成人毛片久久| 99久久国产亚洲高清观看2024| 久久99亚洲综合精品首页| 日韩十八禁一区二区久久| 国产成年无码久久久免费| 日本精品久久久久中文字幕| 久久伊人影视| 久久亚洲AV成人无码电影| 国内精品久久久久久久影视麻豆| 色综合久久久久综合99| 国产精品无码久久综合| 久久精品国产72国产精福利| 午夜精品久久久久久毛片| 久久国产成人午夜aⅴ影院 | 亚洲中文久久精品无码ww16| 欧美伊香蕉久久综合类网站|