幀同步問題,請教?

時間 2021-06-05 20:27:28

1樓:dudu502

你可以看下我的實現:

dudu502:ECS方式實現幀同步

總結來說:客戶端和服務端在同一時刻啟動,然後客戶端的每個邏輯幀結束的時候都會傳送給伺服器操作命令,也僅此而已。即:

如果第n幀客戶端按下Key-A,那麼就把這個命令發給伺服器。而Key-A的真實作用客戶端在這個時刻不用做,等伺服器收到後廣播給所有客戶端的時候再處理,那麼有可能在第n+x幀的時候,客戶端收到了Key-A按下的指令,此時再把當前執行的所有資料都回滾到n-1幀結束之後,也就是n幀開始之前,重新計算所有的資料,再做表現就可以了。

2樓:葉小榕

第乙個問題是因為網路延遲避免不了的,如果不想讓乙個客戶端影響另乙個客戶端,該客戶端在伺服器和其他客戶端的表現就是延遲後的幀執行的邏輯,第二個問題乙個邏輯幀也可以有多個操作,把操作記錄下來,在乙個邏輯幀去執行就行了。

3樓:albert kuang

我們的做法是:

客戶端會有個定時,進行輸入收集,後覆蓋前,傳送時間到就發給伺服器伺服器也是有個定時,時間內的後覆蓋前,時間到了下發客戶端我們的邏輯幀做得很短,應該是短過頭了,我們是30ms伺服器會下發乙個關鍵幀,中間客戶端插一幀平滑幀。如果沒有理解錯,按照你所謂的邏輯幀的說法,我們的能夠改變操作的「邏輯幀」是30ms/幀。

我看網路上的文章都說邏輯幀應該在30~70ms吧,我正考慮是否調大幀的間隔

如果伺服器介意下發訊息太頻繁,可以考慮聚合幀,但還是會面臨操作反饋不及時的問題。如果伺服器要隔200毫秒才下發一幀的資料,就有點太久了。

幀同步手遊如何防外掛程式?

Milo Yip 傳統的鎖步同步 幀同步 方案中,修改客戶端狀態並不是大問題,三人或以上的遊戲中一人作弊可以容易偵測出來 比較各客戶端狀態的 checksum 也可以通過後台覆盤驗證。然而,鎖步同步客戶端必須包含完整遊戲狀態,而狀態同步中後台可選擇性同步狀態子集。所以鎖步同步的主要安全隱患在於感知外...

MMORPG的戰鬥在副本中使用幀同步方式的可行性,及是否有先例?

侯爍 幀同步最近招誰惹誰了都要幀同步,不就是想客戶端寫一遍服務端不用再開發了麼,方法多的是為什麼非要幀同步。不要王者幀同步了就無腦幀同步,吃雞幀同步了麼,你用幀同步的目的是什麼?狀態同步為什麼不能用?還有你說的所有點都不是幀同步的專利,overwatch也有錄影,幀同步沒有靠譜的物理引擎你做不出來豐...

用unity做幀同步的遊戲,能不能也用unity打包乙個極簡的驗證程式來防止作弊?

用unity做服務端早就有了,已經有專案在用,unity甚至做了專門的headless mode.現在已經改名叫server build了 能用是一回事,想要用好的話還是挺麻煩的,大規模應用配合aws效果不錯 iisuiun 遊戲邏輯與表現完全分離。遊戲邏輯不依賴Unity,用VS單獨編譯成dll,...