• <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://m.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 鄭興鋒 閱讀(696) 評論(0)  編輯 收藏 引用
            久久人人爽人爽人人爽av| 久久99亚洲综合精品首页| 久久久久免费精品国产| 国产亚洲精品久久久久秋霞| 久久ZYZ资源站无码中文动漫| 久久精品无码一区二区三区| 久久午夜无码鲁丝片午夜精品| 97久久婷婷五月综合色d啪蜜芽| 久久91精品久久91综合| 伊人伊成久久人综合网777| 99国产欧美久久久精品蜜芽| 久久人搡人人玩人妻精品首页| 69SEX久久精品国产麻豆| 伊人久久一区二区三区无码| 91久久精品电影| 久久久婷婷五月亚洲97号色| 99久久这里只精品国产免费| 久久精品国产清自在天天线| 久久99国产亚洲高清观看首页| 久久这里有精品| 日韩欧美亚洲国产精品字幕久久久 | 亚洲va国产va天堂va久久| 色99久久久久高潮综合影院| 精品国产福利久久久| 久久综合国产乱子伦精品免费| 久久无码高潮喷水| 伊人久久成人成综合网222| 久久精品国产99久久久香蕉| 777久久精品一区二区三区无码| 9久久9久久精品| 久久久久国产精品| 亚洲一本综合久久| 久久本道综合久久伊人| 精品免费久久久久国产一区| 国内精品伊人久久久久影院对白| 九九99精品久久久久久| 精品久久香蕉国产线看观看亚洲 | 国产成人久久久精品二区三区| 99国产欧美精品久久久蜜芽| 精品久久久久久无码专区| 精品免费tv久久久久久久|