한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

Sách trắng lag game › L9 Tiến trình game phía server

Tìm đường (pathfinding) dồn dập Pathfinding storms

ID nguyên nhân sp-pathfinding · Phụ trách chính Phát triển server (Đội phát triển game)

Mở thẻ gốc có hình minh họa và thí nghiệm →

Hàng trăm con quái cùng lúc đuổi theo người chơi và tính đường đi thì tốn rất nhiều CPU.

Vì sao Gom quái hoặc spawn quy mô lớn khiến nhiều quái cùng lúc đuổi theo người chơi → Dẫn đến Mỗi con quái tự chạy tìm đường → Trên màn hình Chỉ bãi săn đó bị quay chậm

Triệu chứng
Quay chậm
Yếu tố
Ngưng trệ
Ai gặp phải
Một địa điểm hoặc kênh
Khi nào
Khi đông người
Phụ trách
Phụ trách chính Phát triển server (Đội phát triển game)
Việc cần làm (Đội phát triển game)
Cache đường đi, giới hạn số lần tính, chia ra nhiều tick.
Trên đồ thị
Tăng theo số người và tải · Thời gian tick của server, số quái theo từng zone
Chỗ cần xem
Số quái đang đuổi theo người chơi và thời gian tick theo từng zone. Nếu không đếm riêng, xem tỷ trọng CPU theo từng hàm của tiến trình game bằng perf top -p
Đúng nếu
thời gian tick tăng khi gom quái hoặc spawn quy mô lớn, và hàm tìm đường (tìm kiếm đường đi) chiếm tỷ trọng lớn trong thời gian CPU
Loại trừ nếu
quái ít, chỉ có người chơi đông mà tick vẫn tăng → tính toán tầm nhìn hoặc broadcast
Cách kiểm tra
Cần log và chỉ số của server, client game

Nguồn

  1. AI.NavMesh.pathfindingIterationsPerFrame Unity
    Mỗi frame chỉ xử lý tìm đường cho một số node nhất định, chia việc ra nhiều frame, nên game vẫn mượt dù đường đi dài hoặc có nhiều yêu cầu cùng lúc
  2. perf-top(1) — Linux manual page perf
    Hiển thị theo thời gian thực tỷ trọng CPU theo từng hàm (symbol) của tiến trình (-p) đang chạy

Nguyên nhân nên xem cùng

Cùng tầng: L9 Tiến trình game phía server

Nguyên nhân ở tầng khác gây cùng triệu chứng (Quay chậm)

Xem thẻ gốc có hình minh họa và thí nghiệm