Việc tính toán một khung hình mất thời gian gấp nhiều lần bình thường nên màn hình dừng lại trong chốc lát.
Vì sao Hiệu ứng skill tăng đột biến, spawn hàng loạt, cập nhật toàn bộ UI dồn vào cùng một khung hình → Dẫn đến Không xong kịp trong 16,7 ms, mất tới 50–300 ms → Trên màn hình Màn hình khựng lại, sang khung hình sau mọi nhân vật cùng nhảy tới vị trí mới một lượt
Khi đông người, Khi làm một thao tác nhất định, Thỉnh thoảng bất chợt
Phụ trách
Phụ trách chính Phát triển client (Đội phát triển game)
Việc cần làm (Đội phát triển game)
Chia việc nặng ra nhiều khung hình, dùng profiler tìm khung hình vọt lên, đặt giới hạn số hiệu ứng.
Con số tham khảo
Ở 60 FPS, một khung hình dài 16,7 ms. Chỉ cần một khung hình vượt quá 50 ms là người chơi đã dễ cảm thấy “bị giật”.
Trên đồ thị
Thỉnh thoảng vọt lên bất chợt · Frame time
Chỗ cần xem
Dùng PresentMon ghi lại frame time (FrameTime) và thời gian CPU, GPU dùng cho khung hình đó (CPUBusy, GPUBusy) trong lúc chơi. Trên di động: chỉ số phiên chậm (slow session) và render chậm (slow rendering) của Android vitals
Đúng nếu
frame time vốn quanh 16,7 ms vọt lên quá 50 ms đúng lúc có hiệu ứng skill, spawn hàng loạt hoặc cập nhật toàn bộ UI, còn ping lúc đó không đổi
Loại trừ nếu
frame time đều nhưng chỉ nhân vật khác bị khựng → phía mạng, ví dụ “Bộ đệm nội suy không có hoặc quá ngắn”. Các lần vọt lên cách đều nhau → xem “Thu gom rác (GC) phía client” trước
Cách kiểm tra
Kiểm tra ở môi trường phía người chơi
Nguồn
Slow renderingAndroid (Google) Muốn đạt 60 FPS thì phải vẽ một khung hình trong 16 ms; trễ hơn thì khung hình bị bỏ qua, trông như giật (jank)
Slow Sessions (games only)Android (Google) Android vitals coi khung hình game vượt 50 ms (20 FPS) hoặc 34 ms (30 FPS) là khung hình chậm