同步:先分清權威狀態(tài)與展示狀態(tài))
幀同步遷移到狀態(tài)同步先分清權威狀態(tài)與展示狀態(tài)遷移前先區(qū)分必須一致的模擬狀態(tài)和可以晚到的展示狀態(tài)。幀同步傳輸入并保持固定步長狀態(tài)同步發(fā)送權威快照客戶端按序號處理亂序。協(xié)議字段先固定語義協(xié)議里固定 tick、玩家編號、輸入序列號和確認位的語義。預測、回滾和插值各自保留獨立緩存不能把網絡收包直接寫入模擬狀態(tài)。遷移期間服務器權威快照與客戶端展示狀態(tài)要使用不同存儲。網絡消息先按 tick 和序號進入接收緩沖經確認后才更新模擬插值結果只影響顯示不能反寫權威或預測歷史。切協(xié)議時守住三個狀態(tài)服務器快照帶 tick 與版本客戶端只接受比當前確認點更新且協(xié)議兼容的狀態(tài)。本地預測按輸入序列保存收到確認后丟棄已提交歷史亂序和重復包不重復執(zhí)行。展示層從兩個已確認狀態(tài)插值回滾只重算模擬不能把平滑后的坐標當權威值。并行對比時記錄同一局輸入、權威快照與客戶端收斂結果。畫面短暫差異可以單獨評估但技能冷卻、位置等關鍵狀態(tài)必須能解釋。驗證清單用可控網絡模擬丟包、亂序、重復包和短暫斷連核對舊快照不會覆蓋新狀態(tài)回滾后關鍵實體的位置和技能冷卻能重新收斂。發(fā)布時固定協(xié)議字段、tick 語義、緩存長度與舊協(xié)議開關。對重復包、舊快照和短暫斷線確認不會回寫更早狀態(tài)或重復釋放技能。新增同步字段后同時補服務器快照、客戶端預測和展示插值的驗收記錄。并行期的驗證重點用同一局輸入并行比較兩條路徑覆蓋丟包、亂序、重復包與斷線。舊快照不能覆蓋新狀態(tài)回滾后關鍵實體要能收斂。