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

            戰(zhàn)魂小筑

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

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

            相位技術

            相位技術大規(guī)模出現(xiàn)在魔獸世界WLK版本, 現(xiàn)在應用已經廣泛應用在各種MMORPG游戲中. 下面對相位技術的做法進行簡單歸納匯總

            表現(xiàn)分類

            副本相位

            早期副本的出現(xiàn), 避免搶怪問題. 所以, 副本其實本身就是一種相位技術. 只不過實現(xiàn)時, 我們一般會將小隊和怪物直接預分配在獨立的一個副本實例中(所以副本原文也是實例的意思)

            分線相位

            相位技術還沒有正式命名時, 同一個場景, 玩家進到不同的分線看到的玩家不一樣, 也是屬于相位的一種. 當然, 如果是組隊玩家, 服務器默認會分配所有隊伍玩家在同一個線(位面)

            真相位

            副本相位和分線相位其實都是靜態(tài)相位, 一旦進入, 中途不會有切換或者混合查看的過程. 真相位可以在一個場景中,動態(tài)切換相位, 相位內和相位外所以不同

            我們常見的真相位表現(xiàn)為: 相位中的角色+玩家+隊伍成員

            在護送任務時, 還會在上面所見角色中疊加世界中的所有角色, 也就是說, 你和隊伍成員可以看到的角色, 其他人看不到, 其他人也看不到你和你的隊伍成員


            為了清晰的簡單的描述, 我為相位創(chuàng)建如下概念與名詞

            相位客體

            表現(xiàn)為除玩家外的角色(怪物,交互物體與相位可見場景)

            私有客體

            這是最常見的一種相位內角色

            • 持有變量

              取PhasingID時,為PhasingTargetID

            • 生成規(guī)則

              當玩家開啟相位后, 在玩家相位內生成的角色為私有客體.

              此時, 將 PhasingTargetID設置為相位生成者的實例ID

            • 刪除規(guī)則

              如果玩家退出相位, 私有客體會存在一段時間或按照需求刪除

            公共客體

            一般指提前放置在場景中, 世界內不可見, 但是能被同相位玩家可見,且同相位玩家都可以互相可見 比如: 只要接了同一個任務的玩家, 都可以看到的NPC

            • 持有變量

              取PhasingID時,為PublicPhasingID

            • 生成規(guī)則

              通過場景編輯器, 放置角色時, 設置其可被觀察到的任務ID

              角色被加載后, 將任務ID設置到StaticPhasingID

            • 刪除規(guī)則

              場景刪除, 角色刪除

            相位主體

            包含玩家與同隊伍玩家

            • 開啟相位后, 可見私有客體+公有客體

            • 隊長視為相位主體, 單人時, 自己為隊長

            • 隊伍其他成員共享隊長的私有相位客體

            • 隊伍其他成員根據(jù)自己的PublicPhasingID匹配目標對象的PublicPhasingID時可互相可見

            • 持有變量

            相位開啟時, 取PhasingID時, 為角色實例ID

            相位關閉時, 取PhasingID時, 為0

            PublicPhasingID

            可見規(guī)則

            當兩個角色的PhasingID相等時, 主體與私有客體互相可見

            當兩個角色的PublicPhasingID相等時, 主體與公有客體互相可見

            可以通過開關設置, 是否在可見的相位客體基礎上, 疊加世界角色(護送任務)

            約束

            • 玩家同時只能看見1個相位
            posted on 2017-04-08 14:41 戰(zhàn)魂小筑 閱讀(20911) 評論(0)  編輯 收藏 引用 所屬分類: 游戲開發(fā)技術網絡 服務器技術
            久久九九久精品国产免费直播| 欧美亚洲国产精品久久蜜芽| 久久亚洲精品成人无码网站| 亚洲熟妇无码另类久久久| 久久久老熟女一区二区三区| 国产精品久久久久久久| 欧美久久久久久精选9999| 亚洲国产另类久久久精品黑人| 国产高清美女一级a毛片久久w| 久久精品国产亚洲αv忘忧草 | 精品一久久香蕉国产线看播放| 国内精品久久久久影院亚洲| 久久青草国产精品一区| 午夜精品久久久久久久久| 久久亚洲高清综合| 久久国产精品99久久久久久老狼| 久久久久亚洲AV无码观看| 久久精品国产亚洲AV不卡| 99久久免费国产精精品| 久久久久亚洲av成人网人人软件 | 久久国产精品99国产精| 久久精品国产99国产精品导航| 久久久久一本毛久久久| 成人久久综合网| 久久久久AV综合网成人| 久久精品国产99国产精品亚洲 | 久久综合狠狠综合久久激情 | 人妻精品久久久久中文字幕69 | 88久久精品无码一区二区毛片 | 伊人热人久久中文字幕| 国内精品久久久久影院日本| 波多野结衣AV无码久久一区| 久久天天躁狠狠躁夜夜躁2014| 中文字幕精品无码久久久久久3D日动漫| 9191精品国产免费久久| 99久久精品国产一区二区三区| 国产精品国色综合久久| 热久久国产精品| 久久免费大片| 久久无码高潮喷水| 日韩av无码久久精品免费|