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

            永遠也不完美的程序

            不斷學習,不斷實踐,不斷的重構……

            常用鏈接

            統計

            積分與排名

            好友鏈接

            最新評論

            引擎關于插件模式開發的思考

            AIREngine已經支持插件式的開發,即不需要開發人員在工程上連接某個DLL和lib,直接通過LoadLibrary的形式加載。
            這種開發方式好處非常多:
            直接通過配置文件可以用指定的動態庫,例如渲染器可以使用DX9或者DX11的,不需要在工程中再指定;
            如果用到一些第三方的項目,例如speedtree,這樣可以根本不同的版本開發不同的插件,例如我們是用speedtree4.2的,按以前的做法,要把speedtree集成到引擎中去,看似沒啥問題的,但如果以后要用到speedtree5.0以上呢?這個時候怎么辦?那又要把引擎代碼大改一次了?利用插件的好處在這里就顯得很明顯了。

            但用插件也會有些問題,特別是第三方項目如speedtree這樣的。
            有些功能,必須每一幀都要更新,這個還好辦,我繼續一下一個FrameListener就行了。但有些功能,必須要每個RenderTarget在渲染的時候也要更新,這個就不是FrameListener可以提供的了。其實這個也是一個引擎設計的問題,如何讓你自定義的東西在每個RenderTarget中更新一次,是一個值得思考的問題。
            我現在初步想到的方案是:定義一個類叫EventListener代替FrameListener,這個類有多個事件,其中一個事件叫RenderTarget_Update,在RenderTarget中Update的時候就會調用這個listener的OnEvent函數。以后如果有更好的方案再代替。

            posted on 2012-05-06 11:17 狂爛球 閱讀(2266) 評論(2)  編輯 收藏 引用 所屬分類: 圖形編程

            評論

            # re: 引擎關于插件模式開發的思考 2012-05-07 13:28 陳梓瀚(vczh)

            做插件的兩個要點,耦合要低,回調要豐富啊。  回復  更多評論   

            # re: 引擎關于插件模式開發的思考 2012-05-08 08:44 liangairan

            是,我現在又遇到個新問題,如何把rendertarget的參數傳進插件里面。@陳梓瀚(vczh)
              回復  更多評論   

            亚洲精品美女久久久久99小说| 天天影视色香欲综合久久| 久久精品九九亚洲精品| 久久精品免费一区二区三区| 欧美伊香蕉久久综合类网站| 日产久久强奸免费的看| 国产精品美女久久久m| 久久亚洲天堂| 久久精品中文字幕久久| 国内精品伊人久久久久妇| 狠狠色丁香久久综合婷婷| 久久经典免费视频| 亚洲综合婷婷久久| 久久精品国产亚洲AV大全| 久久人妻少妇嫩草AV蜜桃| 51久久夜色精品国产| 久久久久人妻一区精品色| 一级女性全黄久久生活片免费 | 欧美日韩成人精品久久久免费看| 久久精品成人欧美大片| 久久亚洲中文字幕精品一区四| 国产精品99久久精品| 久久精品亚洲AV久久久无码| 色99久久久久高潮综合影院| 久久国产综合精品五月天| 国产精品久久毛片完整版| 99久久精品国产一区二区| 婷婷久久综合| 欧美色综合久久久久久| 久久精品国产72国产精福利| 久久这里只有精品久久| 99久久精品费精品国产一区二区| 久久久久久久人妻无码中文字幕爆| 2021国产精品午夜久久| 久久人人爽人人爽人人片AV高清 | 久久99九九国产免费看小说| 久久精品二区| 国产A三级久久精品| 久久久久久亚洲Av无码精品专口| 久久久久久人妻无码| 成人国内精品久久久久影院|