• <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>

            戰魂小筑

            討論群:309800774 知乎關注:http://zhihu.com/people/sunicdavy 開源項目:https://github.com/davyxu

               :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              257 隨筆 :: 0 文章 :: 506 評論 :: 0 Trackbacks

                朋友催促下,想很快的做出新一版的戰魂,并且添加這4年多來自己所有研究出來的高科技!

                對于大量的子彈彈幕和高速微操控制,只有幀同步能解決這個問題,但是中國國內對于幀同步研究的人很少,國外也少見這類文章,甚至用google都很難搜到,難不成是我用錯搜索詞?

                大學時期曾經看過一本重慶大學出版社出版的游戲編程。基于DX8寫的,很基礎,里面還記得有王鑫寫的幀同步的基本原理。

                這里個人總結下:

            1. 幀同步,顧名思義:就是每一幀都同步,所以就是真同步
            2. 由于數據量巨大,一般使用UDP做發送
            3. 要做到數據的絕對同步,延遲不能太大,最好能在局域網來做,延遲20ms以下
            4. 如果要在公網傳輸,由于采用的是P2P傳輸,因此,UDP的打洞也是必不可少的

            因此,可以先定下采用的網絡庫是Raknet(http://www.jenkinssoftware.com/),從網上down了一個下來看視頻,還是很強大的,雖然用的項目不是很多。不過用于個人的項目已經足夠了。

                Raknet和XNA下的網絡庫很類似,支持可信賴的UDP發送。由于是自定義的傳輸方式,同時,沒有TCP的負載均衡的復雜算法,因此網絡傳輸速度可以很快

                在游戲中的幀同步,在我的考慮將是這樣的:

            1. 游戲中的邏輯幀與渲染幀是不同步的,邏輯幀也許遠遠低于渲染幀
            2. 對于一個使用elapse值在邏輯控制下移動的物體,這個移動算法必須能被時間插值。
            3. 那么我們將這段時間進行分段,每一段就是一幀。我們為這些幀進行編號,類似于封裝TCP協議一樣。這些編號更類似于指令號。
            4. 游戲中有一人被作為服務器使用,每個玩家將自己的操作編碼成指令后發送給這臺服務器,由服務器統一分配序號廣播給所有的其他玩家
            5. 對于可以被時間插值的動畫軌跡(尋路),那么將發送軌跡(如果尋路算法出來的結果是唯一的,就只需要發送起點跟結尾點)以及每幀更新這個物體的時間插值參數。
            6. 由于外界輸入對系統的干擾,才產生了需要同步的數據。外界輸入干擾保護用戶操作和AI
            7. 考慮到每人的網絡ping值的不同,對于特別慢的玩家,可能在其廣播指令時,其他玩家已經走出很多步,因此需要計算一個平均ping值,當網絡中某人的ping值低于這個值時,將彈出類似于魔獸/星際的同步對話框,等待其本地指令序號趕上其他玩家的序列號
            8. 由于所有物體的移動都可以被時間插值,因此,游戲中的每一邏輯幀,只需要將本地服務器在上一幀的ping值和幀號廣播給所有的玩家
            9. 當物體啟動和結束移動時廣播
            10. 當渲染幀數下降時,將很明顯的看到幀同步對象有很明顯的"跳躍"現象,這個現象在星際中更是明顯。但在技術成熟的魔獸中已經被插值予以替代
            posted on 2009-05-14 23:09 戰魂小筑 閱讀(6912) 評論(0)  編輯 收藏 引用 所屬分類: 網絡 服務器技術
            91精品国产91久久久久福利| 丰满少妇人妻久久久久久| 亚洲欧洲久久av| 亚洲精品乱码久久久久66| 免费观看久久精彩视频| 欧美激情精品久久久久久久| A狠狠久久蜜臀婷色中文网| 久久精品国产亚洲5555| 亚洲午夜久久久影院| 久久精品国产亚洲综合色 | 久久亚洲国产午夜精品理论片| 久久精品免费大片国产大片| 色欲av伊人久久大香线蕉影院| 国产99久久九九精品无码| 精品国产日韩久久亚洲| 国内精品久久久久久不卡影院| 少妇高潮惨叫久久久久久| 欧美性大战久久久久久| 国产99久久久国产精免费| 99国产精品久久| 日本欧美久久久久免费播放网| 久久亚洲AV无码西西人体| 91精品国产高清久久久久久91| 亚洲午夜久久久久久久久电影网 | 久久久久精品国产亚洲AV无码 | 久久精品国产亚洲AV无码麻豆| 人人狠狠综合久久亚洲| 99久久婷婷国产综合精品草原| 久久精品夜夜夜夜夜久久| 亚洲精品无码久久久久sm| 亚洲va久久久久| 人人妻久久人人澡人人爽人人精品| 青青青青久久精品国产h| 久久精品国产免费一区| 91精品国产9l久久久久| 久久国产乱子伦免费精品| 久久一日本道色综合久久| 久久久精品国产sm调教网站| 老色鬼久久亚洲AV综合| 久久久久久久人妻无码中文字幕爆| 久久妇女高潮几次MBA|