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

Buku Putih Lag Game › Masalah yang hanya dialami sebagian pemain

Ukuran buffer input per pemain Per-player server input buffer (jitter buffer)

ID penyebab pt-input-buffer · Penanggung jawab utama Pengembangan server (Tim Pengembang Game) · Turut terlibat Pengembangan klien (Tim Pengembang Game)

Buka kartu interaktif dengan gambar dan simulasi →

Jika server menampung sedikit input untuk setiap pemain lalu mengambilnya satu per tick, gerakan terlihat mulus di mata pemain lain, tetapi aksi pemain itu sendiri dikonfirmasi server lebih lambat sebesar itu.

Mengapa Server menampung input pemain yang lambat di buffer, lalu menerapkannya satu per tick → Akibatnya Buffer kecil sering kosong, sehingga karakter itu berhenti di tempat atau server menggerakkannya dengan menebak dari input terakhir. Buffer besar membuat input pemain itu sendiri lambat dikonfirmasi → Di layar Buffer kecil: tersendat sesaat di mata pemain lain. Buffer besar: hasil skill pemain itu sendiri keluar terlambat (input lag)

Gejala
Patah-patah, Input lag
Faktor
Jitter
Siapa yang mengalami
Hanya satu karakter yang terlihat aneh, Hanya saya
Kapan
Selalu
Penanggung jawab
Penanggung jawab utama Pengembangan server (Tim Pengembang Game) · Turut terlibat Pengembangan klien (Tim Pengembang Game)
Tugas Tim Pengembang Game
Server: atur ukuran buffer secara otomatis sesuai kondisi koneksi tiap pemain, ambil dua input sekaligus untuk mengejar jika tertinggal, perintahkan klien pemain yang buffer-nya sering kosong untuk mengirim input lebih awal. Klien: kirim input sedikit lebih awal sesuai perintah server (penyesuaian waktu klien).
Kisaran angka
Berbeda di setiap game, tetapi umumnya sepanjang 1–3 tick. VALORANT, dengan server 128 tick, menjaga buffer server lebih pendek lagi, rata-rata setengah frame (sekitar 4 ms). Cara adaptif yang hanya memperbesar buffer untuk pemain dengan jitter besar cukup umum.
Di grafik
Hanya sebagian yang tinggi · Panjang buffer input dan jumlah buffer kosong per pemain
Yang diperiksa
Catat di server, per pemain dan per tick, jumlah input yang tersisa di buffer input, berapa kali buffer kosong lalu diisi tebakan dari input terakhir, dan waktu dari input tiba sampai diterapkan
Cocok jika
Pemain dengan buffer kecil sering mengalami buffer kosong, dan pada saat itu karakternya berhenti sebentar di layar pemain lain. Pada pemain dengan buffer besar, waktu dari input sampai diterapkan bertambah sebesar panjang buffer
Tidak cocok jika
Buffer hampir tidak pernah kosong, tetapi patah-patah terlihat di layar pemain lain: masalah interpolasi di sisi pemain yang melihat. Buffer pendek, tetapi input lag tetap besar: lebih mungkin RTT itu sendiri atau menunggu tick dua kali
Sarana pemeriksaan
Log dan metrik server atau klien game

Sumber

  1. Peeking into VALORANT's Netcode Riot Games
    Server menyesuaikan acuan waktu klien agar antrean input tetap sependek mungkin, tetapi cukup untuk meredam kedatangan yang tidak merata. Target buffering server rata-rata setengah frame
  2. NetworkTimeSystem class (Netcode for GameObjects 2.5) Unity
    LocalBufferSec: lama server menampung pesan klien di buffer. Waktu klien dimajukan agar pesan tiba lebih awal di server
  3. NetworkTime and ticks (Netcode for GameObjects 2.5) Unity
    Nilai buffer bisa diperbesar untuk pemain dengan koneksi buruk

Lihat juga

Lapisan yang sama: Masalah yang hanya dialami sebagian pemain

Penyebab di lapisan lain dengan gejala yang sama (Patah-patah)

Lihat kartu interaktif dengan gambar dan simulasi