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

的筆記

隨時隨地編輯

Page系統設計思想

Page系統設計思想

Steve Streeting
Page系統作為Ogre(1.7.2)的核心組件,其設計理念如下:

 

1.         勿須假定Page系統明確了解世界,世界的新的組成部分不僅具備可以被用于動態加載定義好的數據的特性,還必須有被動態"發現\探索到"的特性.

:對原有的世界必須也有個改進,讓其具備一定被動態發現的特性.

2.         允許多策略決定頁面的生命周期---烏鴉飛行距離路線案例就是一個很好的印證[1],但我們也必須允許其他策略(尤其是在密集的、閉塞的場景中,它可能是連通或閉塞的區域狀態)的存在.

3.         將分頁策略(Paging Strategy)和分頁內容當做一個正交概念對待,亦即你可以用多種方式混合和匹配組合它們.

4.         勿須假定分頁是規則的尺寸,或者分頁占據獨特的、非重疊的空間區域。

5.         支持設置多種多樣結構的分頁。可以是網格的地形,也可以是巖洞結構的'蛇型'區域。

6.         頁面之間的過渡不能有具體類型相關的細節信息,關鍵是需要支持各種不同的場景的過渡,例如從洞穴結構到二維地形再到空曠空間。

7.         可以在一個獨立線程中完成分頁的加載,不管是在全線程或半線程下都可以用相同的形式將資源作為可用資源來使用[2]

8.         分頁應該在物理內容變化的時候支持多重LODs。分頁中的內容可以有自己的LOD,但我們也應該允許物理內容在更高級別上也可以發生變化。

9.         現在還不支持分頁坐標系。為了配合大世界的精細處理,可以使用雙精度坐標系和與攝像機相關的渲染方法。頁面相關的坐標系需要一個較大的代碼變動,主席肯定不允許冒這么大的風險把這差事給我這大把年紀的程序猿去做滴,那就預留給以后的版本完成。

10.     總的來說,對分頁系統的支持不能過分要求場景管理器有太多改動,公主澤肯定會不高興滴,那這些就保留到2.0版的時候再搞吧。

 

PageManager(頁面管理器)

       主要作用是提供PageStrategyPageContentFactory這樣的擴展類的一個中心注冊入口,同是也是訪問當前加載的世界分頁(PagedWorld)的地方。我還沒有決定是將其掛在核心的Root下還是讓它作為一個獨立庫讓使用者引用。

 

PagedWorld(世界分頁)

       這個基本上是整個結構中的數據驅動部分。一個PagedWorld是世界中內容的集合,可以從文件中加載或在代碼中定義。最重要的是,它不需要創建其中的全部東西---頂多需要創建一個分頁世界區域(PagedWorldSections),并且可以在定義了“重生點”的情況下選擇性的創建一個分頁入口點(PageEntryPoints,在出現不可能簡單獲的從一個相機的世界位置加載分頁需要的數據源的情況下,這點非常重要)。 用這種適當的方式,請求就能動態的加載余下需要的部分。

 

PagedWorldSection(世界分頁區域)

       這是世界的一個組成區域,它符合特定的分頁策略。例如,室外2D地形區域(這里的'地形'我的意思是:它在結構上是2D的,而不是指它定義了地形的內容)可能會使用一個策略,并被限定使用一種方式;室外的天空區域可能使用另一種策略,一個復雜的室內區域可能使用再另一種策略。這里只需要掌握一個高層次的描述---世界的區域編號(section id)、通用邊界信息以及可選的入口點(僅僅包含一個坐標和一個頁面標識符 ---在策略缺失而通過上下文無法將坐標點直接轉換成一個分頁的情況下尤為重要)

注:Section這里指組成某個整體的一部分區域。Space這里指地形上的天空,不是天空盒。

 

PageStrategy(分頁策略)

       這個類是負責決定如何加載和清除分頁,并且可以選選擇僅從世界位置獲得一個分頁(和一個PagedWorldSection)。每當攝像機移動的時候,PageStrategy負責決定如何響應一個在世界分頁區域(PagedWorldSection)中的頁面請求。它可能是一個網格系統,這個時候它可能使用頁面之間的關聯性來確定遍歷的深度。無論如何,只要給定了一個世界統一坐標、一個存在的分頁或一個分頁入口點(PageEntry point),這個策略就必須能夠決定哪些分頁必須被請求、哪些分頁必須被拋棄。分頁策略(PageStrategy)被設計成具備用戶可擴展性。

 

Page(頁面)

這個類聚合了一個數據頁的所有表述。它雖然定義了頁面,但實際上不包含其自身的任何數據。相反,它只是包含了一個LOD levels的列表和一個LOD策略的引用。每個分頁在世界區域里都有一個唯一的ID

 

PageLOD(頁面層級)

       這個是為了在需要的情況下讓頁面內容不止一次加載完。例如,您可能想要一個分多個階段加載的分頁,其中包括最基本的內容與一個距離相關的非常簡單的定義,然后是包括靠近的時候更多細節的定義。我打算重用可插拔的LodStrategy類來表現這些轉換規則(transition rules)。

        現在定義我們頁面加載中所需單位化的特殊標記:“世界ID:世界區域ID:分頁ID:分頁層級索引 (WorldIDWorldSectionIDPAGEIDPageLODIndex)”。我可能會在一個適當的地方放置一個可插拔的轉換系統,這樣就可以運用這些數字,并將其轉換成一個獨特的資源來加載---這個資源可能簡單到是一個文件(“myworld_sec1_p1234_0.dat”),或者可以轉換成一個現成的已打包好的資源文件或類似東西中的一個偏移量。

 

PageContent(頁面內容)

       雖然PageLOD是加載的單位量,但是你可能還想要包含多種不同類型的內容。例如,在一個分頁中你可能有一塊地形、一些靜態幾何體、一些自定義的用戶數據(如觸發區域,世界中的物體等)。因此使用了PageLOD你就可以有多個PageContent實例,它們都被放在一起加載,但每一個實例都會有自定義數據格式和同樣的套路用于將其在線獲取。在加載時,它們都將被工廠系統實例化,而這個工廠系統則基于名字加載器來實現的。

 

       這些不同類型的頁面內容(PageContent)中的每一種也都可以自由地做他們自己的LOD版本的事情。例如,如果某個內容包括了創建一些實體的實例并且它們是使用了LOD的網格,那么這個情況下將仍然提出申請。對于地形,每個分頁都有它自己的細分(subdivisions)與LOD,但其前提是這是一個基于內存的LOD,適合于輕量級的動態調整,而更高級別的PageLOD則更重量級并在實際上改變頁面內容、造成內存占用(memory footprint)的變化等(也同樣被潛在的執行了)。這就是為什么存在兩種類型的LOD的原因,它們并非互相重復。頁面內容(PageContent)和頁面內容工廠(PageContentFactory)都被設計成具備用戶可擴展性。

 

Phew(瑪雅)

       瑪雅,好吧,這是我有生以來寫出的內容最多的帖子之一。我希望一切看起來都很好---不過它仍然不夠精煉,因此沒有任何內容是一成不變的,但我已經花了相當多的時間來思考整體架構、我要支持什么樣的功能以及擴展點在哪里,所以我很高興為公主澤做了這么多。歡迎評論!

 

Steve Streeting

Tue Mar 03, 2009 7:39 pm



[1] 一個著名的策略分析案例,指烏鴉飛行路線有一定隨機性,可能很遠,可能很近.

[2] with the same modes as available for resources

posted on 2013-04-14 11:27 的筆記 閱讀(3002) 評論(0)  編輯 收藏 引用

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久国产精品久久久| 日韩亚洲视频在线| 亚洲精品字幕| 亚洲你懂的在线视频| 久久精品成人| 欧美黄免费看| 亚洲午夜国产一区99re久久| 久久精品电影| 欧美久久久久久蜜桃| 国产日韩在线看片| 亚洲精品视频啊美女在线直播| 欧美国产欧美亚洲国产日韩mv天天看完整 | 欧美日韩国内| 日韩香蕉视频| 欧美不卡在线| 亚洲精品一区二区三| 亚洲高清一区二区三区| 欧美a级理论片| 亚洲欧美乱综合| 欧美亚洲一区三区| 亚洲专区一二三| 久久这里有精品视频| 欧美日精品一区视频| 午夜视频久久久| 欧美极品在线视频| 尤妮丝一区二区裸体视频| 亚洲欧美日韩另类| 亚洲国产精品福利| 欧美在线视频观看| 欧美色中文字幕| 亚洲精品一区二区三区不| 午夜在线一区| 最新亚洲激情| 欧美激情区在线播放| 亚洲国产欧美国产综合一区| 久久香蕉国产线看观看av| 亚洲欧美在线另类| 国产精品久久久久久久浪潮网站| 一本久久a久久精品亚洲| 亚洲经典一区| 欧美多人爱爱视频网站| 亚洲七七久久综合桃花剧情介绍| 久久影音先锋| 久久久www| 亚洲第一中文字幕在线观看| 免费日韩精品中文字幕视频在线| 久久精品国产亚洲5555| 影音先锋一区| 欧美激情一区二区三区| 欧美风情在线观看| 一区二区三区四区国产| 99视频超级精品| 国产精品综合色区在线观看| 午夜在线播放视频欧美| 欧美在线观看一二区| 亚洲第一区在线| 亚洲电影在线看| 欧美亚州一区二区三区| 久久国产一二区| 久久噜噜噜精品国产亚洲综合| 亚洲国产精品久久久久婷婷老年| 亚洲国产视频a| 国产精品网红福利| 久久夜色精品国产亚洲aⅴ| 免费视频一区| 亚洲免费人成在线视频观看| 亚洲欧美日韩综合国产aⅴ| 亚洲高清激情| 亚洲一区二三| 亚洲国产精品视频一区| 在线视频欧美日韩精品| 136国产福利精品导航网址| 日韩天堂在线观看| 影音先锋亚洲精品| 一区二区三区四区五区精品| 激情偷拍久久| 一本一道久久综合狠狠老精东影业| 国内精品国产成人| 夜夜嗨av一区二区三区网站四季av | 91久久精品www人人做人人爽 | 美女诱惑黄网站一区| 欧美日韩1234| 毛片av中文字幕一区二区| 国产精品啊啊啊| 亚洲黄色一区| 亚洲福利视频一区| 久久国产福利国产秒拍| 亚洲欧美久久久| 欧美精品自拍| 亚洲国产一区二区三区a毛片| 国产自产精品| 亚洲欧美在线一区二区| 亚洲一区日本| 欧美午夜精品久久久久久浪潮| 欧美成人亚洲成人日韩成人| 国产一区av在线| 亚洲欧美日韩国产综合精品二区| 在线亚洲伦理| 欧美日韩另类在线| 亚洲精品久久久久久一区二区 | 欧美日韩在线亚洲一区蜜芽 | 性一交一乱一区二区洋洋av| 欧美视频在线观看一区二区| 亚洲激情在线观看视频免费| 亚洲黄网站黄| 欧美精品观看| 亚洲美女中文字幕| 亚洲无吗在线| 国产精品视频| 欧美一区视频在线| 久久亚洲综合网| 亚洲高清av在线| 欧美精品一区二区三区四区| 亚洲三级影院| 亚洲欧美日韩第一区| 国产欧美视频一区二区三区| 久久国产精品久久w女人spa| 免费在线观看成人av| 99精品国产高清一区二区 | 性欧美video另类hd性玩具| 久久亚洲春色中文字幕久久久| 亚洲福利在线观看| 欧美日韩精品一区| 亚洲欧美激情四射在线日| 欧美xart系列在线观看| aa级大片欧美三级| 国产亚洲va综合人人澡精品| 美女国产一区| 亚洲在线观看免费视频| 美女任你摸久久| 亚洲一区国产| 亚洲国产精品免费| 国产精品美女xx| 蜜桃视频一区| 亚洲午夜电影网| 亚洲国产欧美另类丝袜| 欧美一区二区三区在线播放| 亚洲欧洲另类| 韩国女主播一区| 欧美午夜电影完整版| 免费人成精品欧美精品| 欧美一级精品大片| 一本色道久久综合亚洲精品按摩 | 亚洲欧美日韩精品久久久| 欧美理论电影在线观看| 午夜欧美不卡精品aaaaa| 亚洲肉体裸体xxxx137| 狂野欧美一区| 久久婷婷久久| 一区二区三区视频在线观看| 欧美日本一区| 亚洲综合精品一区二区| 亚洲国产精品成人| 亚洲精品在线视频| 国产一区99| 久久亚洲欧洲| 99精品国产福利在线观看免费| 久久久亚洲国产美女国产盗摄| 亚洲一区美女视频在线观看免费| 亚洲黄色影片| 亚洲国产导航| 在线观看精品| 曰本成人黄色| 伊人夜夜躁av伊人久久| 国产一区在线播放| 国产一二三精品| 国产婷婷一区二区| 国产日韩精品一区二区浪潮av| 国产精品地址| 国产精品久久久久久影院8一贰佰| 欧美日本不卡高清| 欧美伦理在线观看| 欧美成人国产va精品日本一级| 久久综合九色九九| 麻豆精品视频在线观看| 欧美阿v一级看视频| 久久久91精品| 欧美精品久久99| 国产精品国产三级国产aⅴ无密码| 欧美日韩综合在线| 国产欧美一区二区精品性| 国产午夜精品理论片a级探花| 激情六月婷婷久久| 1204国产成人精品视频| 亚洲美女视频在线免费观看| 国产精品99久久久久久久女警| 亚洲免费网址| 浪潮色综合久久天堂| 最新高清无码专区| 亚洲在线中文字幕| 开心色5月久久精品| 欧美日韩成人精品| 国产午夜精品福利| 亚洲精品在线二区| 欧美亚洲免费在线| 欧美成人性生活| 国产精品99久久久久久人| 久久国产精品一区二区三区| 欧美激情视频一区二区三区在线播放 | 欧美一区二区啪啪|