• <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>
             在游戲服務器開發中, 網絡通信是很關鍵的, 而在網絡通信中,數據的同步是關鍵, 在我的上一篇博客(http://www.shnenglu.com/zhengxf/archive/2010/07/08/119737.html)中談的了數據如何同步的問題, 其中提到了兩點 1.數據發送給誰. 2.網絡延遲的話,如何同步.


                上次主要談了網絡延遲時的同步問題,今天我們主要談論數據發送給誰的問題, 要談論這個問題,我們就不的不談論: 地圖, NPC, 玩家他們三個之間的關系.

                其實地圖是個靜態的數據集合, 其中主要包含了地形信息和物品信息,這里的物品指的是靜態的,所以它是不需要進行同步的,也就是每個玩家在同一個地圖上看到信息是一樣的,所以這些信息有客戶端的場景管理器管理. 不進行網絡通信.

                NPC: NPC主要分兩種 一種是靜態的NPC,如玩家獲取任務的NPC, 另外玩家升級打的怪, 也是NPC.      靜態的NPC有屬性和功能,但不需要同步, 動態的NPC(如怪)需要進行網絡同步,這里我們就有一個問題, 動態的NPC要將它的信息發送給誰呢?任何一個涉及到網絡通信的NPC和玩家都有一個共同的性質就是它有可見范圍,假如說一個玩家在十米范圍內可見,那么他就回將信息發送給距離十米以內的玩家和NPC, 這里有含有兩個問題: 一: 十米以外的NPC怎么辦, 二:怎么獲取十米以內的發送用戶。有兩種解決辦法:一是在場景中搜索找到要發送的用戶信息,告訴服務器讓服務器來發,二是發送自己的信息到服務器,服務器搜索NPC列表,和玩家列表,來發送,我覺的后著更合理。

               玩家: 玩家的同步主要是玩家和玩家的同步, 如玩家每前進一步, 就向服務器發一條消息. 服務器在玩家列表中查找到范圍之內的其他玩家信息,并發送消息,這里有一個問題,是玩家要不要將消息發送給NPC?因為這種NPC也可以理解為機器人,它可以感知到敵人就在附近, 本身就在服務上, 所以不用發送消息, 但是NPC在感受到玩家的時候要向它(NPC) 可見范圍內的玩家發送消息.

              接下來還有一個問題,是發送什么樣的消息的問題,因為針對NPC,和玩家,并不是所有的消息都發,而是有選擇向的發,這個問題我們下次討論。
            Posted on 2010-09-03 12:28 鄭興鋒 閱讀(690) 評論(0)  編輯 收藏 引用
            亚洲国产精品久久电影欧美| 久久久WWW免费人成精品| 亚洲午夜久久久| 国产激情久久久久久熟女老人| 久久男人中文字幕资源站| 久久午夜福利电影| 亚洲AV无码久久精品成人| 亚洲成色WWW久久网站| 欧美伊香蕉久久综合类网站| 久久国产成人| 久久99亚洲网美利坚合众国| 亚洲国产精品无码久久久秋霞2 | 97久久精品无码一区二区天美| 99久久精品国产麻豆| 久久久WWW成人| 无码精品久久久久久人妻中字| 精品久久久久久无码国产| 久久99这里只有精品国产| 青青草国产精品久久| 久久国产欧美日韩精品免费| 一本久久a久久精品综合夜夜| 亚洲色大成网站WWW久久九九| 欧美久久天天综合香蕉伊| 91精品国产高清久久久久久io| 久久久久九九精品影院| 久久久久高潮毛片免费全部播放| 四虎影视久久久免费| 日日狠狠久久偷偷色综合96蜜桃| 97r久久精品国产99国产精| 久久精品国产99久久久古代| 久久久精品久久久久久 | 久久亚洲AV成人出白浆无码国产| 久久影视国产亚洲| 亚洲国产精品久久久久网站| 国产精品久久99| 久久综合狠狠色综合伊人| 99久久中文字幕| 久久精品国产精品亚洲精品 | 久久高清一级毛片| 久久福利片| 理论片午午伦夜理片久久|