• <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>
            隨筆 - 505  文章 - 1034  trackbacks - 0
            <2008年3月>
            2425262728291
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345


            子曾經(jīng)曰過(guò):編程無(wú)他,唯手熟爾!

            常用鏈接

            留言簿(94)

            隨筆分類(649)

            隨筆檔案(505)

            相冊(cè)

            BCB

            Crytek

            • crymod
            • Crytek's Offical Modding Portal

            Game Industry

            OGRE

            other

            Programmers

            Qt

            WOW Stuff

            搜索

            •  

            積分與排名

            • 積分 - 912020
            • 排名 - 14

            最新隨筆

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            MANGOS中的地圖管理 
            從蚊子叮blog上轉(zhuǎn)載的,但是這兒是老家。

            這里所說(shuō)的地圖管理是指服務(wù)器端的地圖管理以及地圖上的對(duì)象管理。

            在魔獸中,一組服務(wù)器為一個(gè)世界,一個(gè)世界內(nèi)同時(shí)存在著多個(gè)游戲場(chǎng)景,如東部王國(guó),卡利姆多,監(jiān)獄副本,戰(zhàn)場(chǎng)等。每個(gè)游戲場(chǎng)景都對(duì)應(yīng)著一幅地圖,但一幅地圖卻并不一定能確定一個(gè)場(chǎng)景,這是因?yàn)橛懈北镜拇嬖凇T谝粋€(gè)場(chǎng)景地圖里,還會(huì)分區(qū)域,比如東部王國(guó)里會(huì)有艾爾文森林區(qū)域、西部荒野區(qū)域等。

            從wow客戶端的adt及wdt數(shù)據(jù)里可以大致了解到地圖相關(guān)數(shù)據(jù)。每張地圖最多有64*64個(gè)格子【重劍注:看了下朝哥的worldEditor,果然是左下角(0,0)右上角(63,63) 】,每個(gè)格式大小為533.33333*533.33333(即1600/3,為什么設(shè)定成這個(gè)數(shù)字?)除了東部王國(guó)和卡利姆多外,大部分的地圖都比較小,不會(huì)真正占用這么多個(gè)格子。每個(gè)格子用一個(gè)adt文件來(lái)描述其詳細(xì)信息,另外有一個(gè)wdt文件來(lái)指出該地圖中哪些編號(hào)的格子存在。

            再來(lái)看mangos中是如何表示這種結(jié)構(gòu)的。一張地圖就是一個(gè)Map對(duì)象,對(duì)于可以創(chuàng)建出多個(gè)場(chǎng)景的副本地圖,多個(gè)副本也就對(duì)應(yīng)著多個(gè)Map對(duì)象,里面記錄了當(dāng)前管理的是哪個(gè)副本,另外再有一個(gè)MapInstanced組件來(lái)維護(hù)副本地圖列表。地圖內(nèi)分成的64*64的格子,每個(gè)格子的信息包括區(qū)域標(biāo)志、地形類型、水位層級(jí)和高度數(shù)據(jù),用GridMap結(jié)構(gòu)體來(lái)表示,由Map來(lái)維護(hù)這個(gè)GridMap二維數(shù)組。另外Map內(nèi)還維護(hù)了該地圖內(nèi)所有的WorldObject和GridObject列表,當(dāng)然也是以Grid為單位來(lái)保存。

            由于一個(gè)Grid的實(shí)際大小為533*533,其范圍還是非常大的,一般玩家也不需要關(guān)注這么大范圍內(nèi)的所有對(duì)象,所以mangos又將一個(gè)Grid分為了8*8個(gè)Cell,每個(gè)對(duì)象都同時(shí)關(guān)注當(dāng)前所在Cell及周圍的八個(gè)Cell內(nèi)的對(duì)象。這種劃分格子來(lái)管理地圖區(qū)域的方法在以前基于TILE的2D游戲中差不多為最通用的方法。

            現(xiàn)在的服務(wù)器地圖有些也引入了客戶端場(chǎng)景管理的方法,使用四叉樹、八叉樹的方式,云風(fēng)與地圖管理有關(guān)的兩篇文章可以看一下:

            http://blog.codingnow.com/2006/10/quadtree.html

            http://blog.codingnow.com/2006/12/collision.html

            posted on 2009-05-05 15:01 七星重劍 閱讀(1992) 評(píng)論(5)  編輯 收藏 引用 所屬分類: Game Engine

            FeedBack:
            # re: MANGOS中的地圖管理 2009-05-06 23:29 Davy.xu
            每每看到感興趣的內(nèi)容大部分都是在重劍的空間,感慨感慨

            最近剛看mangos,希望和貴兄一道分析  回復(fù)  更多評(píng)論
              
            # re: MANGOS中的地圖管理 2009-05-08 17:56 七星重劍
            @Davy.xu
            臭味相投啊 ^_^  回復(fù)  更多評(píng)論
              
            # re: MANGOS中的地圖管理 2009-06-02 22:27 xoyojank
            搞服務(wù)器去了么-_-  回復(fù)  更多評(píng)論
              
            # re: MANGOS中的地圖管理 2009-06-04 14:19 七星重劍
            @xoyojank
            非也非也  回復(fù)  更多評(píng)論
              
            # re: MANGOS中的地圖管理 2009-10-16 10:16 getmangos
            " 每個(gè)格子用一個(gè)adt文件來(lái)描述其詳細(xì)信息,另外有一個(gè)wdt文件來(lái)指出該地圖中哪些編號(hào)的格子存在。"


            你說(shuō)的是客戶端吧,mangos里的地圖都是 .map文件
              回復(fù)  更多評(píng)論
              
            蜜桃麻豆www久久| 久久国产成人| 囯产精品久久久久久久久蜜桃 | 欧美一级久久久久久久大片| 久久99精品国产麻豆宅宅| 久久无码人妻一区二区三区午夜| 婷婷久久五月天| 亚洲精品99久久久久中文字幕| 久久久久久久综合日本| 欧美精品福利视频一区二区三区久久久精品| 久久精品中文无码资源站| 日本久久久久亚洲中字幕| 久久亚洲欧美国产精品| 日韩av无码久久精品免费| 亚洲精品高清国产一线久久| 久久综合亚洲欧美成人| AV色综合久久天堂AV色综合在| 国内精品人妻无码久久久影院| 久久丫精品国产亚洲av不卡 | 久久久久中文字幕| 99久久精品无码一区二区毛片| 久久99国产精品成人欧美| 中文成人无码精品久久久不卡 | 成人久久综合网| 国产午夜精品理论片久久| 日韩一区二区三区视频久久| 久久久久久精品久久久久| 久久综合88熟人妻| 亚洲成色999久久网站| 久久人人爽人爽人人爽av| 婷婷国产天堂久久综合五月| 亚洲国产精品无码久久久不卡 | 伊人久久大香线焦AV综合影院| 日韩精品久久久久久久电影蜜臀| 国内精品久久九九国产精品| 欧美久久亚洲精品| 久久精品麻豆日日躁夜夜躁| 久久久久99精品成人片| 久久久精品2019免费观看| 久久精品综合一区二区三区| 久久久久人妻一区精品果冻|