国产露脸精品国产沙发|极品妇被弄得99久九精品亚洲|亚洲va成精品在线播放人|日韩精品久久久免费观看

    
    

        <delect id="w59je"></delect>

            當(dāng)前位置:首頁 > 足球資訊 > 正文內(nèi)容

            給大家科普一下歐陸娛樂(2022已更新(今日/知乎)

            杏彩體育2年前 (2022-12-31)足球資訊67

            一、項目背景

            CF手游的團隊有著相當(dāng)豐富的FPS游戲制作經(jīng)驗,但是移動端開發(fā)經(jīng)驗相對匱乏。團隊面對的挑戰(zhàn)很大,我們需要在手機端完美還原CF十多個游戲模式,上百把槍械手感。

            雖然我們有實時對戰(zhàn)FPS游戲開發(fā)經(jīng)驗,但是手游網(wǎng)絡(luò)質(zhì)量很差,我們需要保證在高Ping值,高丟包率的弱網(wǎng)絡(luò)環(huán)境下流暢同步,并且避免外掛的出現(xiàn)。CF端游用戶量很大,手游也會是一個高在線的游戲。對于后臺我們希望能大幅度地提高負(fù)載,節(jié)省成本。

            二、解決方案

            1. 移動端實時同步技術(shù)

            1.1 CF手游的C/S架構(gòu)

            CF手游是競技向的手游,為了杜絕外掛,弱網(wǎng)絡(luò)下有良好表現(xiàn),注重游戲的時效性,最終選擇基于 C/S架構(gòu)使用可靠UDP作為網(wǎng)絡(luò)層的同步方案:

            圖CF手游網(wǎng)絡(luò)架構(gòu)

            引擎層:Unity的物理引擎是Physx。為了保證兩邊物理算法一致,我們搭建了基于Physx的物理服務(wù)器,并對其作出優(yōu)化,同時集成了Recast Navigation等高性能引擎組件為服務(wù)器提供基礎(chǔ)功能。

            數(shù)據(jù)層:基于我們的關(guān)卡工具導(dǎo)出碰撞模型和關(guān)卡數(shù)據(jù)提供給服務(wù)器,保證數(shù)據(jù)一致。

            游戲邏輯層:客戶端使用C#編寫,服務(wù)器為了高性能使用C++,保證核心運算一致。 客戶端和服務(wù)器都會維護一致的邏輯實體,兩邊都做移動計算,服務(wù)器會在同樣的位置進行命中傷害計算,并且通知客戶端做表現(xiàn)。服務(wù)器永遠(yuǎn)是權(quán)威,客戶端是啞終端,借此達到高強度的反外掛。

            整體C/S架構(gòu)基于我們實現(xiàn)的UDP網(wǎng)絡(luò)層進行快速傳輸。

            1.2 高性能的Dedicated Server與服務(wù)器負(fù)載優(yōu)化

            圖CF手游服務(wù)器物理世界還原

            CFM的即時對戰(zhàn)服務(wù)端(DS)是依賴虛幻3引擎開發(fā)過程中積累的經(jīng)驗,完全為手游重寫的。DS基于PhysX和Recast開源組件開發(fā),對程序性能有良好的控制。在騰訊標(biāo)準(zhǔn)M1機型配置下,單機綜合承載可以達到8000人。DS反外掛強度接近端游,單機性能比同類端游提高7-8倍。

            1.3 高時效的UDP網(wǎng)絡(luò)層

            游戲?qū)W(wǎng)絡(luò)有實時性要求高,帶寬要求小的特點。TCP雖然提供了可靠傳輸,但是內(nèi)置的復(fù)雜擁塞控制算法并不是專為實時性優(yōu)化的,也沒有提供較好的方法讓業(yè)務(wù)定制化。CF手游實現(xiàn)了自定義的RUDP協(xié)議方案,使用UDP保證協(xié)議實時性,同時通過自定義重傳策略兼顧可靠性,取得了很好效果,主要技術(shù)要點包括:

            數(shù)據(jù)傳輸分類

            CF手游中并非所有數(shù)據(jù)都要求可靠,按游戲邏輯需要,只有不到50%的協(xié)議有可靠性需求,RUDP中只對這部分協(xié)議提供可靠性保證。而非可靠包則保證盡快到達,以滿足游戲的實時性需求。對玩家移動狀態(tài)等信息,由業(yè)務(wù)層定時冗余重傳。

            圖CF手游網(wǎng)絡(luò)數(shù)據(jù)傳輸分類

            客戶端與服務(wù)器的交互時序如下:

            圖CF手游網(wǎng)絡(luò)數(shù)據(jù)交互時序

            快速發(fā)送

            發(fā)送方不維護發(fā)送窗口,不等待前面包是否ack,有數(shù)據(jù)需要發(fā)送時立即發(fā)送。

            快速重傳

            CF手游使用比TCP更高精度,響應(yīng)速度更快的重傳策略以保證實時性。

            表RUDP快速重傳策略

            帶寬優(yōu)化

            主要思路是有損服務(wù)和降低不必要開銷。CFM持續(xù)進行了多輪流量優(yōu)化,包括:

            MTU設(shè)計為500+字節(jié),應(yīng)用邏輯保證數(shù)據(jù)包大小不超過MTU,避免拆包。

            減小包頭,8字節(jié)。

            小包合并。同一幀發(fā)往同一個目標(biāo)的多個小數(shù)據(jù)包合并為大包,減少包數(shù)量。

            降低服務(wù)端幀率和位置精度,但不影響玩家體驗。

            1.4 弱網(wǎng)絡(luò)移動同步方案

            PVP實時玩家同步

            CFM采用C/S架構(gòu),服務(wù)器上會執(zhí)行完整的游戲邏輯。在移動同步上,玩家的位置也是以服務(wù)器的位置為準(zhǔn),客戶端1P視角和3P視角分別進行同步和模擬。

            圖CF手游玩家實時同步方案

            如上圖所示,客戶端1P根據(jù)玩家的輸入調(diào)整移動方向和速度,并把相關(guān)信息上報到服務(wù)器。服務(wù)器對上報的信息進行合法性檢驗之后更新玩家的移動狀態(tài),并在每個邏輯幀下發(fā)移動信息到所有客戶端??蛻舳嗽谑盏椒?wù)器下發(fā)的移動信息,使用適當(dāng)?shù)耐剿惴▽ν婕业囊苿舆M行模擬,達到實時流暢的同步效果。其技術(shù)要點如下:

            客戶端1P即時預(yù)表現(xiàn),避免網(wǎng)絡(luò)延遲帶來的操作手感遲滯的問題。

            客戶端在接受玩家輸入后,會即時更新本地的移動狀態(tài),并上報服務(wù)器。在收到服務(wù)器回包之前,客戶端1P就會按照新的狀態(tài)進行移動,保證玩家的操作在第一時間得到響應(yīng)??蛻舳伺c服務(wù)器物理世界的一致性則保證了客戶端1P預(yù)表現(xiàn)的結(jié)果和服務(wù)器的移動結(jié)果是一致的。

            客戶端3P進行延遲補償和預(yù)測同步,消除網(wǎng)絡(luò)因素引入的位置誤差。

            在3P的同步模擬上,CFM參考了DR算法(Dead Reckoning)和影子跟隨算法等方案,并針對移動弱網(wǎng)絡(luò)的特點,加入了延遲補償和預(yù)測同步的特性,解決了在網(wǎng)絡(luò)抖動的情況下同步位置差距大和移動過程卡頓等關(guān)鍵問題??蛻舳耸盏椒?wù)器的移動信息后,會對服務(wù)器的移動路點進行過濾和合并,然后構(gòu)造出3P同步模擬的移動路徑。同時,客戶端會根據(jù)當(dāng)前與服務(wù)器的位置差距以及當(dāng)前的網(wǎng)絡(luò)延遲對模擬移動時的運動速度進行補償,從而保證客戶端3P經(jīng)過SimulateTime時間的模擬移動后與服務(wù)器的位置達到一致。

            另外,在移動弱網(wǎng)環(huán)境下,網(wǎng)絡(luò)抖動會導(dǎo)致游戲過程中網(wǎng)絡(luò)瞬時延遲變大,客戶端在3P同步模擬過程中可能出現(xiàn)服務(wù)器下發(fā)的移動信息丟失或者延遲到達的問題。在這種情況下,3P模擬的移動過程就會被打斷,出現(xiàn)走走停停的卡頓現(xiàn)象。為此,CFM在同步模擬的過程中加入了預(yù)測同步,在沒有收到服務(wù)器信息的情況下,會根據(jù)玩家之前的移動狀態(tài)繼續(xù)預(yù)測移動,預(yù)測時間為2倍的網(wǎng)絡(luò)延遲。在預(yù)測移動過程中,如果收到來自服務(wù)器的移動信息,則會自動恢復(fù)為正常的同步模擬過程,從而保證了3P同步模擬過程中移動的流暢性和連續(xù)性。

            服務(wù)器延時、丟包補償

            丟包時,服務(wù)端可能由于移動路徑不連貫而卡在拐角處,需要有補償機制。因為傳輸延遲,從客戶端向服務(wù)器發(fā)起移動請求,到服務(wù)器開始模擬有時間差。CF手游服務(wù)端需要回溯到移動包的歷史時間,再追到當(dāng)前時間。這樣允許最多減少100-200ms內(nèi)的C/S不同步現(xiàn)象。另外當(dāng)客戶端移動路徑部分丟失后,服務(wù)端根據(jù)歷史數(shù)據(jù),嘗試推算可能的移動路徑。通過嘗試?yán)@路策略避開障礙,在較小范圍內(nèi)近似模擬客戶端路徑。

            應(yīng)用平滑插值和物理力學(xué)。

            在移動弱網(wǎng)環(huán)境出現(xiàn)抖動時,服務(wù)器的移動信息可能會延遲到達或者扎堆到達,導(dǎo)致客戶端3P同步模擬過程中速度陡變,移動過程忽快忽慢等問題。因此,CFM對同步模擬過程中速度的變化進行了平滑插值,保證速度的變化符合玩家對現(xiàn)實世界變速的認(rèn)知,提高游戲的真實感。另外,在進行大角度變向過程中,根據(jù)物理力學(xué)規(guī)律,玩家角色應(yīng)該遵循先減速再逆向加速的物理過程。CFM在同步模擬過程中對玩家的此類行為進行了分析判定,并實現(xiàn)了相應(yīng)的物理模型,避免玩家在變向移動時速度過快難以命中的問題,增強了游戲體驗。

            PVE大規(guī)模怪物同步

            CFM的多人PVE模式以末日逃生,僵尸圍城為設(shè)定,為了更好地表現(xiàn)尸潮圍堵的感覺,提高玩家闖關(guān)過程中的爽快感,必須支持大規(guī)模的怪物行為同步。面對大量怪物帶來的流量消耗及客戶端性能壓力,CFM針對PVE怪物行為的特點重新設(shè)計了低誤差,低流量消耗,支持復(fù)雜行為的同步方案。

            圖CFM指令式怪物AI同步方案

            支持上百AI單位的實時同步,核心問題:

            服務(wù)器傷害邏輯與客戶端行為表現(xiàn)一致性;

            怪物群體行為與移動同步;

            大規(guī)模怪物同步流量控制;

            AI命令按需發(fā)送,降低流量消耗。

            在CFM的多人PVE模式中,怪物的移動信息只會在怪物移動路徑變更時進行同步,而不是傳統(tǒng)方案中的每幀同步。怪物路徑更新的頻率約為1~2秒/次,其同步流量消耗只有傳統(tǒng)方案的1/8左右。

            通用怪物行為建模,對復(fù)雜怪物行為進行抽象。

            CFM中怪物種類多樣,怪物行為特別是BOSS技能流程復(fù)雜,包括各種連續(xù)技和組合技。CFM怪物同步方案中對怪物的行為進行了抽象,把怪物的行為規(guī)范到統(tǒng)一的流程中,通過對服務(wù)器下發(fā)的技能指令進行解釋,生成客戶端技能狀態(tài)機,驅(qū)動怪物的復(fù)雜行為表現(xiàn)。

            PVE大量怪物同步:群體行為

            難點

            ?  常規(guī)尋路導(dǎo)致怪物位置重疊;

            ?  純客戶端方案導(dǎo)致位置差異大;

            解決

            ?  服務(wù)器計算怪物群體力,構(gòu)造移動路徑;

            ?  客戶端根據(jù)下發(fā)路徑進行移動模擬;

            效果

            ?  保證服務(wù)器與客戶端路徑一致;

            ?  路徑合包下發(fā),節(jié)省流量;

            ?  避免客戶端尋路與碰撞計算,提高性能;

            2.  移動FPS游戲手感

            2.1移動端操作手感

            FPS競技類游戲,對玩家操作的反應(yīng)和準(zhǔn)確性要求極高,如何在移動端實現(xiàn)良好的操作手感是個很大的挑戰(zhàn)。我們從移動、瞄準(zhǔn)和射擊三個維度進行了深度探索和優(yōu)化,不斷嘗試了幾十種手感方案,上百套參數(shù)調(diào)整,最終得到了目前的操作手感解決方案。

            適配多樣屏幕的操作數(shù)學(xué)模型

            我們獲取玩家的觸屏輸入Touch,通過計算Touch的位置和DeltaPosition,轉(zhuǎn)換為角色的移動加速度和視角轉(zhuǎn)向角度等。

            由于屏幕的密度和手機分辨率各不一樣,相同的滑屏物理距離會得到不一樣的DeltaPos,因此CFM在操作模型計算中加入了移動設(shè)備的dpi和分辨率因子來解決一致性問題。

            抖動手感數(shù)學(xué)模型

            抖動的主要因素有兩個:一是觸摸的不精確性,另一個是游戲幀率的抖動。觸摸的不精確性,是由于我們手指與屏幕的接觸是一塊區(qū)域,但程序中獲取的卻是一個像素點,并且各個系統(tǒng)的實現(xiàn)也各不一致。

            3D Touch

            在蘋果推出的新一代多點觸控技術(shù)3D Touch后,我們立刻進行了相關(guān)的技術(shù)預(yù)研,最終實現(xiàn)了一種能完美解決操作體驗的手感方案,也成為了首款支持3D Touch的FPS手游,并申請技術(shù)專利。我們在跟隨開火的基礎(chǔ)上,加入了按壓力度來觸發(fā)開火(即3D Touch)。在iOS上,我們通過Hook UIKit的事件分發(fā),從而把按壓力度轉(zhuǎn)發(fā)到C#層來實現(xiàn)。

            圖CF手游3D Touch

            2.2槍械射擊手感

            作為經(jīng)典第一人稱射擊游戲CF在移動平臺上的延續(xù),CFM力求為玩家還原最真實的槍械手感。CFM結(jié)合移動客戶端上玩家的操作方式進行優(yōu)化,創(chuàng)新性的設(shè)計自身的槍械彈道數(shù)學(xué)模型,此模型成為射擊游戲的標(biāo)桿:

            T字彈道模型

            槍械射擊時,子彈射出的最終方向主要由三個因素決定,一是槍射當(dāng)前瞄準(zhǔn)的方向,即玩家希望射擊的位置;二是槍械后座力引起的槍口上抬和左右偏向,形成T字形的主彈道;三是槍管震動和環(huán)境因素對子彈彈道形成的輕微擾動,即子彈彈道的散發(fā)。

            圖CF手游槍械彈道模型

            槍械后座力模型

            槍械每次射出的子彈的反作用力都會導(dǎo)致槍口上抬和左右偏向,上抬和搖晃的幅度與槍械當(dāng)前連發(fā)數(shù)成正比,槍口隨著連發(fā)數(shù)的增加逐步上抬,到達最大上抬幅度后轉(zhuǎn)為隨機方向的左右擺動。

            在槍械停止射擊后,游戲模擬槍口位置在玩家控制下從上抬位置恢復(fù)到初始位置,恢復(fù)的過程使用彈簧模型,遵循胡克定律。

            子彈彈道散發(fā)模型

            現(xiàn)實中子彈射出的時候受各種環(huán)境因素影響,會出現(xiàn)小幅度的隨機偏向,子彈的最終射出方向即是在后座力計算后的前向方向疊加上散發(fā)的偏差,彈道散發(fā)的幅度和方向符合高斯正態(tài)分布。因此CFM在實現(xiàn)槍械散發(fā)模型時也使用高斯隨機數(shù)實現(xiàn)。

            創(chuàng)新輔助瞄準(zhǔn)機制

            CFM在射擊上創(chuàng)新性地設(shè)計了一套輔助瞄準(zhǔn)機制,幫助玩家自動瞄準(zhǔn)靜止和低速運動的目標(biāo),降低新手玩家的操作門檻,提高新手玩家的樂趣。同時,輔助瞄準(zhǔn)在面對快速移動和轉(zhuǎn)向目標(biāo)時將失去效用,以此保證高手玩家的技術(shù)優(yōu)勢,提高玩家對技術(shù)提升的追求。

            稿件合作:一元(微信:smallkisshe)

            商務(wù)合作:Amber(微信:lcxk6876767)

            投稿郵箱:news@GameRes.com

            投訴郵箱:webmaster@GameRes.com

            掃描二維碼推送至手機訪問。

            版權(quán)聲明:本文由財神資訊-領(lǐng)先的體育資訊互動媒體轉(zhuǎn)載發(fā)布,如需刪除請聯(lián)系。

            本文鏈接:http://thecityplacetownhomes.com/?id=20390

            “給大家科普一下歐陸娛樂(2022已更新(今日/知乎)” 的相關(guān)文章

            足彩分析師:?卡塔爾vs厄瓜多爾 世界杯競猜

            足彩分析師:?卡塔爾vs厄瓜多爾 世界杯競猜

            【足彩分析師】 卡塔爾vs厄瓜多爾【足彩分析師】卡塔爾vs厄瓜多爾 【足彩分析師】 卡塔爾vs厄瓜多爾2022年11月21日 00:00 卡塔爾卡塔爾陣中所有球員都來自本土聯(lián)賽球隊,加上卡塔爾聯(lián)賽沒有過高的關(guān)注度,這也...

            烏拉圭足球隊球衣為什么是四顆星?

            烏拉圭足球隊球衣為什么是四顆星?

            本文2277個字,9幅圖片,兩篇相關(guān)文章,建議閱讀時間13分鐘。 足壇基本上大家默認(rèn)的規(guī)則是獲得過幾次世界杯冠軍,球衣上就可以印幾顆星,這也是榮譽的象征。但是,有一些國家隊卻并不嚴(yán)格按照這個規(guī)則來。2020年足球歐洲杯延期到2021年6月開始舉行,很多球迷這個月都比較辛苦,白天上班...

            球探比分:C羅甚至不打電話祝賀本澤馬 他不像梅西坐著都能踢球

            球探比分:C羅甚至不打電話祝賀本澤馬 他不像梅西坐著都能踢球

            點擊上方藍(lán)字,獲取更多大神球料。 近日,C羅在接受皮爾斯-摩根采訪中公開炮轟曼聯(lián)、滕哈赫和球隊高層。意大利球星卡薩諾在節(jié)目上則炮轟了C羅的這一行為。 卡薩諾說道:“從足球的角度上來說,滕哈赫和朗尼克做得很好,沒有把C羅放在球場上。然后他想表明他不懂德語,因為他可是C羅,但他...

            標(biāo)準(zhǔn)足球賽場多大面積?

            標(biāo)準(zhǔn)足球賽場多大面積?

            “標(biāo)準(zhǔn)足球場“這是一個不太準(zhǔn)確的概念,在國際足聯(lián)的《足球競賽規(guī)則》一書(每年更新,一般版本稱呼后加年號,如《足球競賽規(guī)則2019-2020》)中的描述方式為: 3場地尺寸: 邊線必須長于球門線(俗稱的“底線”,編輯時...

            看了那么多年球,你可曾想到過這些?

            看了那么多年球,你可曾想到過這些?

            足球,不僅僅是場上的90分鐘。 一場比賽的勝利,關(guān)乎的東西有很多,其中影響的因素也有很多。每場主隊的比賽,用我們古人的話來說:“天時、地利、人和,三者不得,雖勝有殃”。天時不必多說,各個城市的天氣想必大不一樣。人和嘛,作為成功之路的綜合實力(成功的關(guān)鍵),其比重不言而喻。穆帥的帥不...

            在足球世界杯上獲得三連冠的難度,相當(dāng)于在NBA獲得幾連冠?

            在足球世界杯上獲得三連冠的難度,相當(dāng)于在NBA獲得幾連冠?

            都別說三冠王了,近二十年這都是慘劇啊! 然后說點兒正經(jīng)的,世界杯目前一共舉辦了88年21屆只有八個國家拿過冠軍,六個國家拿了次數(shù)大于1,衛(wèi)冕能做到到只有巴西也已經(jīng)在遙遠(yuǎn)的1958、1962,并且參賽球隊不過十六支。...

            ?