青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

李錦俊(mybios)的blog

游戲開發 C++ Cocos2d-x OpenGL DirectX 數學 計算機圖形學 SQL Server

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  86 Posts :: 0 Stories :: 370 Comments :: 0 Trackbacks

公告

QQ:30743734
EMain:mybios@qq.com

常用鏈接

留言簿(16)

我參與的團隊

最新隨筆

搜索

  •  

積分與排名

  • 積分 - 373953
  • 排名 - 67

最新評論

閱讀排行榜

評論排行榜

Ogre的Manager真是多啊,就象個官僚公司,干事的沒幾個,一堆的Manager,個個丫還都是Singleton.說自己是Singleton卻又public構造函數,讓人來new它.在第1次被new的時候,偷偷地將this賦給靜態成員ms_Singleton,第2次new它就要assert喊冤了,當然這都是叫Singleton的模板基類的那個構造函數干的(典型的小人行徑,見不得光).Manager一多,本來不復雜的事,也變得復雜了.

1.LogManager
a.全局單體LogManager組合Log指針Map集合,控制有多個Log對象,1個Log對象表達對一個Log文件的輸入(老一套).
b.同時LogManager維護1個當前默認主事的Log對象mDefaultLog,以展現Log對象功能而隱藏自己實際是個Manager的身份(邀功自賞,其心可誅).
c.維護一個監控者接口LogListener列表,以履行作為一個Manager受外部監督的職責(實為推清責任).

2.DynLibManager
a.全局單體DynLibManager組合DynLib*指針Map集合,控制多個DynLib對象,1個Dynlib表達對動態庫的裝載和卸載(典型的官僚主義,人浮于事,這點屁事都要有Manager).

3.ResourceGroupManager
? a.全局單體ResourceGroupManager組合ResourceManager指針Map?Manager的Manager,靠,好大的官)
? b.一上任就安插了個親信Manager,建立個叫General的ResourceManager.

4.SceneManagerEnumerator
? a.連它都是系統單體,一個迭代器,小人得志啊,不說了,它可管著一堆SceneManager,惹不起.
? b.一開始就安排了什么事都作不了的SceneManager(基類)作默認SceneManager,大事小事都是它,室內室外一手包.

5.一堆中層干部,一堆的MaterialManager,MeshManager,ParticleSystemManager,SkeletonManager......,都是Singleton,有的還是ResourceManager的門生,一開始都干了2件事.
a.定名分:向ResourceGroupManager注冊說自己是某方面的Manager,_registerResourceManager.
b.要資源:向ResourceGroupManager要求控制對某種腳本的解析_registerScriptLoader(就是瓜分資源).
c.有個OverlayManager,ArchiveManager最牛,手下還有幾個工廠給它干活,無非是自己作不了,又推給下級.

6.一堆插件外勞,開始加載,這些外勞到系統中來當然要注冊.

7.透明實體mTransparentObjects按z序排序,不透明實體按material分組.

8.我一開始認為Materail是個很聰明的概念,后來才發現上當受騙了,它管理了mTechniques數組,而Techniche管理了mPasses數組(Multipass render),最后實質的內容在Pass類中,Pass類表達了一個渲染的環境.由于這個官僚系統實在太官僚,所以按對象每次渲染是不可接受的(跨部門合作太多,相互扯皮),渲染狀態切換頻繁,效率極低,透明渲染z序混亂.所以需要按Materail分組和z軸分序,而RenderSystem的最重要方法接受RenderOperation參數.

9.Pass和RenderOperation是兩位最能干的勞動人民,都是受人管制的對象,整個系統的靈魂和核心,Pass封裝了最重要的渲染狀態(即進行glDrawXXX時管線所處的狀態,著色系統),RenderOperation封裝了帶紋理幾何渲染操作(glDrawElements幾何系統),兩者構成一個完整的渲染.即,先,調用SceneManager的setPass(在其中其仍將調用RenderSystem以設置管線狀態),再,調用RenderSystem的_render.

10.SceneManager的虛方法_findVisibleObjects是場景管理的核心,由它將Renderable分組,分透明和不透明分送入不同的渲染隊列,Renderable組合RenderOperation和Pass(但出頭的都是Materail),然后SceneManager對之排序,整理,送入RenderSystem渲染.

11.SceneManager的_renderScene是基本渲染核心,它完成若干任務
?? a.幀動畫驅動_applySceneAnimations
?? b.場景圖更新_updateSceneGraph
?? c.渲染隊列更新,_findVisibleObjects更新主場景,_queueOverlaysForRendering更新上層主界面,_queueSkiesForRendering更新天空盒,最后_renderVisibleObjects.

12.渲染隊列RenderQueue,維護std::map<RenderQueueGroupID, RenderQueueGroup*>對象,以表達其內部的多個方面(世界,前景,背景)的渲染分隊列.RenderQueueGroup再往下分std::map<ushort, RenderPriorityGroup*, std::less<ushort> >,以表達其(如前景)內部按ushort優先級維護渲染分隊列.RenderPriorityGroup維護一個mTransparentPasses,若干個SolidRenderablePassMap.

posted on 2006-11-19 08:40 李錦俊(mybios) 閱讀(3197) 評論(8)  編輯 收藏 引用 所屬分類: 數學、幾何和圖形學

Feedback

# re: 【轉貼】Ogre的官僚主義批判 2007-02-28 18:17 王一偉
貌似看帖子的人都沒研究過OGRE,呵呵,不過現在模仿OGRE結構寫的引擎還是很多 呵呵  回復  更多評論
  

# re: 【轉貼】Ogre的官僚主義批判 2007-06-12 09:59 zdl1016
對OGRE才研究了一個月,不敢妄加評論。  回復  更多評論
  

# re: 【轉貼】Ogre的官僚主義批判[未登錄] 2007-06-12 12:51 FlyingBear
主要是OGRE的Manager大都有很復雜的初始化,用一般的singleton實現靜態初始化不容易控制順序  回復  更多評論
  

# re: 【轉貼】Ogre的官僚主義批判 2008-05-20 15:30 Welbon
呵呵,LZ 這篇文章很有意思  回復  更多評論
  

# re: 【轉貼】Ogre的官僚主義批判[未登錄] 2009-02-10 13:17 hunter
有點意思  回復  更多評論
  

# re: 【轉貼】Ogre的官僚主義批判 2009-02-20 11:35 geng
呵呵,一針見血  回復  更多評論
  

# hyperc 2010-06-05 17:26 hyperc
最惡心的引擎之一 ogre 掛了不知道多少依賴庫 連boost都要給你強制掛上  回復  更多評論
  

# re: 【轉貼】Ogre的官僚主義批判[未登錄] 2011-01-12 14:25 111
占在巨人肩膀上,難道你要自己去實現boost的東西?  回復  更多評論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲淫片在线视频| 午夜精品久久久久久久| 免费一级欧美在线大片| 久久精品人人做人人综合| 国产午夜精品视频免费不卡69堂| 亚洲欧美另类国产| 中文国产一区| 国产一区二区三区免费在线观看| 久久久久久亚洲综合影院红桃| 午夜精品视频一区| 在线观看亚洲视频| 亚洲国产日韩在线| 欧美色另类天堂2015| 欧美一区二区在线免费观看| 香蕉亚洲视频| 最新热久久免费视频| 99在线精品视频在线观看| 国产精品在线看| 美女爽到呻吟久久久久| 欧美激情一二三区| 欧美亚洲三级| 蜜臀va亚洲va欧美va天堂| 亚洲一区二区三区在线播放| 午夜精品999| 亚洲精品一区二区三| 亚洲午夜免费视频| 亚洲福利免费| 亚洲在线播放| 日韩视频亚洲视频| 欧美一区二区三区在线免费观看 | 亚洲午夜女主播在线直播| 国产伦精品一区二区三| 欧美大片第1页| 国产人久久人人人人爽| 亚洲人成人99网站| 狠狠色狠狠色综合日日91app| 亚洲人成在线影院| 国内精品视频在线观看| 一本色道久久综合亚洲精品按摩| 黄色日韩网站| 亚洲欧美国产高清| 在线视频你懂得一区二区三区| 欧美制服丝袜| 亚洲一区二区网站| 女人色偷偷aa久久天堂| 欧美一区二区三区视频免费| 欧美另类高清视频在线| 老司机午夜精品视频| 国产精品久久久久高潮| 亚洲精品人人| 亚洲人在线视频| 久久精品一区二区三区中文字幕| 亚洲一区成人| 欧美日韩国产精品成人| 欧美国产亚洲视频| 激情婷婷欧美| 久久狠狠久久综合桃花| 久久成人免费| 国产日韩欧美自拍| 午夜电影亚洲| 欧美在线一级视频| 国产女人18毛片水18精品| 亚洲视频成人| 午夜精彩视频在线观看不卡| 国产精品99免费看 | 久久免费高清视频| 国产伦精品一区二区三区免费迷 | 欧美高清在线精品一区| 亚洲国产精品成人精品| 久久美女性网| 久久久亚洲一区| 国产一区亚洲一区| 久久久午夜精品| 媚黑女一区二区| 亚洲国产精品久久久| 久久伊人亚洲| 亚洲国产精品视频一区| 亚洲精品国产精品国自产观看浪潮| 久久久久国产精品一区三寸| 免费日韩成人| 亚洲精品日韩在线| 欧美日韩中字| 校园激情久久| 欧美xart系列高清| 亚洲精品乱码久久久久久久久| 欧美极品在线观看| 中文欧美在线视频| 久久深夜福利| 亚洲精品一品区二品区三品区| 亚洲综合激情| 国产一区二区三区久久| 老司机一区二区三区| 亚洲国产婷婷| 欧美一级淫片aaaaaaa视频| 国语自产精品视频在线看抢先版结局| 久久激情视频| 亚洲精品网站在线播放gif| 午夜精品网站| 在线成人中文字幕| 欧美视频精品在线| 欧美在线一级va免费观看| 欧美激情在线| 欧美在线|欧美| 亚洲国产精品一区二区第一页| 欧美日韩国产一区精品一区| 午夜国产精品视频免费体验区| 欧美va天堂va视频va在线| 一本色道久久99精品综合| 国产一区二区三区黄视频| 欧美日韩1区2区| 欧美在线视频一区二区三区| 日韩视频免费在线| 另类春色校园亚洲| 亚洲欧美国产高清| 亚洲精品社区| 好看的日韩视频| 国产精品久久一卡二卡| 欧美xx视频| 久久久精品五月天| 亚洲男女自偷自拍| 亚洲精品一区在线观看| 女女同性女同一区二区三区91| 午夜精品剧场| 亚洲视频 欧洲视频| 亚洲人成绝费网站色www| 国产一区二区| 国产乱子伦一区二区三区国色天香| 欧美成年人网| 久久高清免费观看| 亚洲永久在线| 这里只有精品丝袜| 亚洲精品乱码久久久久久蜜桃麻豆| 久久影视三级福利片| 小黄鸭精品aⅴ导航网站入口| 一区二区福利| 99精品免费| 亚洲激情黄色| 韩国美女久久| 黄色免费成人| 国内揄拍国内精品久久| 国产老肥熟一区二区三区| 国产精品高潮呻吟视频| 欧美日韩免费在线视频| 欧美日本精品在线| 欧美日韩福利视频| 欧美日韩一级黄| 国产精品xvideos88| 欧美午夜大胆人体| 国产精品电影网站| 国产精品乱子久久久久| 国产精品视频xxxx| 国产情人综合久久777777| 国产欧美日韩激情| 国产午夜精品久久久| 好看的亚洲午夜视频在线| 国内久久视频| 亚洲国产精品激情在线观看| 亚洲黄页视频免费观看| 日韩亚洲成人av在线| 一区二区三区黄色| 午夜老司机精品| 久久久久久久网| 久色成人在线| 亚洲成色www8888| 日韩一级欧洲| 亚洲欧美一区二区激情| 久久精品国产清自在天天线| 久久久一区二区三区| 欧美激情综合在线| 国产精品国产| 一区在线影院| 在线视频你懂得一区| 欧美在线视频在线播放完整版免费观看| 久久精品国语| 亚洲国产成人高清精品| 一区二区三区欧美| 久久精品亚洲| 欧美日韩在线另类| 国产在线欧美| 一级成人国产| 久久一区激情| 日韩视频在线观看一区二区| 午夜精品区一区二区三| 蜜桃伊人久久| 国产精品美女久久久| 亚洲国产精品va在线看黑人动漫 | 国产欧美精品一区二区三区介绍| 一区二区在线不卡| 亚洲尤物视频在线| 免费成人高清视频| 亚洲一区在线直播| 欧美成人亚洲成人| 好吊日精品视频| 亚洲小说欧美另类婷婷| 美女视频黄免费的久久| 在线中文字幕一区| 欧美韩日一区二区| 激情一区二区| 欧美在线观看视频在线| 亚洲精选成人|