Nếu vẽ ngay khi nhận gói tin từ server, jitter (độ dao động của khoảng cách giữa các lần gói tin đến) lộ nguyên trên màn hình.
Vì sao Vẽ ngay vị trí vừa nhận, hoặc bộ đệm ngắn hơn jitter → Dẫn đến Gói tới muộn bao lâu thì dừng bấy lâu, gói dồn tới bao nhiêu thì nhảy bấy nhiêu → Trên màn hình Nhân vật khác di chuyển khựng khựng
Phụ trách chính Phát triển client (Đội phát triển game) · Phối hợp Phát triển server (Đội phát triển game)
Việc cần làm (Đội phát triển game)
Client: dùng bộ đệm nội suy, tự động điều chỉnh độ dài bộ đệm theo tình trạng đường truyền. Server: áp dụng bù trễ (phán định có quay ngược) để phán định vẫn đúng khi người chơi bắn vào hình ảnh quá khứ trễ đúng bằng bộ đệm.
Con số tham khảo
Thường đặt bộ đệm bằng khoảng 2 lần khoảng cách gửi gói của server (nhận 20 lần trong 1 giây thì là 100 ms).
Trên đồ thị
Luôn cao ngay từ đầu · Khoảng cách gói tin đến, số lần bộ đệm nội suy bị cạn
Chỗ cần xem
Ghi lại trên client phân bố khoảng cách đến của gói tin từ server, và số khung hình bị dừng hoặc chuyển sang ngoại suy vì không có snapshot kế tiếp để nội suy
Đúng nếu
độ dao động khoảng cách đến thường xuyên lớn hơn độ dài bộ đệm nội suy, mỗi lần như vậy bộ đệm cạn và nhân vật khác khựng lại. Tăng bộ đệm thì giảm
Loại trừ nếu
bộ đệm đủ mà vẫn khựng → kiểm tra xem bản thân khoảng cách gửi của server có thất thường không (tick bị trễ)
Cách kiểm tra
Cần log và chỉ số của server, client game
Tìm hiểu thêm
Tăng bộ đệm thì chuyển động mượt hơn, nhưng bạn cũng thấy đối thủ ở trạng thái quá khứ lâu hơn chừng ấy. Vì vậy, phán định đòn đánh dùng kèm bù trễ: server quay ngược về “quá khứ mà người đó đang thấy” để kiểm tra.