• <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)  編輯 收藏 引用
            久久WWW免费人成一看片| 久久国产精品99精品国产987| 色播久久人人爽人人爽人人片aV| 久久久久久久免费视频| 久久av无码专区亚洲av桃花岛| 久久夜色精品国产亚洲| 欧美成a人片免费看久久| 久久综合国产乱子伦精品免费| 国产精品美女久久久久av爽| 亚洲欧美成人综合久久久| 国内精品久久久久影院网站| 久久精品aⅴ无码中文字字幕重口| 久久久久成人精品无码| 精品久久久久久无码专区| 中文字幕精品无码久久久久久3D日动漫| 亚洲国产欧美国产综合久久| 免费精品久久久久久中文字幕| 91精品国产乱码久久久久久| 久久热这里只有精品在线观看| 国产精品无码久久综合网| 国产精品久久久久AV福利动漫| 国内精品伊人久久久久妇| 久久精品成人| 一本大道加勒比久久综合| 国产亚洲婷婷香蕉久久精品| 久久久久亚洲AV成人片| 久久久久亚洲AV无码永不| 中文字幕无码免费久久| 久久精品综合网| 伊人久久大香线蕉亚洲五月天| 亚洲国产成人精品无码久久久久久综合| 中文字幕成人精品久久不卡| 91精品国产91久久久久久青草 | jizzjizz国产精品久久| 久久久久亚洲av综合波多野结衣| 久久无码中文字幕东京热| 久久无码AV中文出轨人妻| 久久精品国产亚洲AV影院| 欧美黑人激情性久久| 99re这里只有精品热久久| 日本久久久精品中文字幕|