Saya memiliki banyak entitas di sisi klien yang disimulasikan (kecepatan mereka ditambahkan ke posisi mereka pada basis per frame) dan saya membiarkan mereka mati memperhitungkan sendiri. Mereka mengirim pembaruan tentang di mana terakhir kali dilihat dan kecepatannya berubah. Ini sangat bagus dan pemain lain melihat penemuan ini. Namun, setelah beberapa saat, para pemain ini mulai melakukan desync setelah beberapa waktu. Ini karena latensi.
Saya ingin tahu bagaimana saya bisa melakukan interpolasi antar negara sehingga mereka tampaknya berada di posisi yang benar. Saya tahu di mana pemain TERAKHIR terlihat dan kecepatan mereka saat ini tetapi interpolasi ke keadaan terakhir terlihat menyebabkan pemain untuk benar-benar bergerak-mundur-. Saya tidak bisa menggunakan kecepatan sama sekali untuk klien lain dan hanya 'mengarahkan' mereka ke arah yang sesuai, tetapi saya merasa ini akan menyebabkan gerakan jaggy. Apa alternatifnya?
sumber
Ketika Anda mengatakan:
itu membuat saya berpikir bahwa masalah Anda mungkin lebih berkaitan dengan jam Anda keluar dari langkah daripada dengan masalah latensi. Jika latensi, itu seharusnya sama buruknya di awal dari 10 menit. Jika satu jam permainan berjalan sedikit lebih cepat dari yang lain, akan ada beberapa artefak jitter aneh yang akan semakin buruk dari waktu ke waktu. Seorang klien dapat mensimulasikan di masa depan, ketika paket-paket ini tiba dari server, itu akan menarik klien kembali, menyebabkan entitas untuk melompat-lompat. Jalankan beberapa tes lagi untuk mengetahuinya.
Jika jam permainan yang tidak sinkron memang menjadi masalah, Anda harus melihat dengan sangat hati-hati di lingkaran pembaruan Anda dan memastikan bahwa setiap pembaruan didasarkan pada jumlah waktu permainan yang berlalu (baik tetap atau variabel), dan bahwa permainan -waktu maju menggunakan sesuatu seperti jam dinding (bukan waktu render atau variabel lain). Gaffer memiliki beberapa artikel bagus tentang ini, dan ada pertanyaan yang layak di sini berbicara tentang timesteps tetap vs variabel . Semoga ini membantu.
sumber