Baterai termasuk peti jaringan untuk permainan.
[dependencies]
netstack = "0.3.0"
Dokumentasi (pekerjaan sedang berlangsung)
Jika Anda mempunyai saran, melewatkan fitur, atau hanya ingin menghubungi, Anda dapat membuka terbitan di repositori ini atau menghubungi saya di Twitter.
Untuk menggunakan netstack dalam produksi secara efektif, Anda memerlukan saluran aman untuk menukar rahasia awal dan token koneksi. Dianjurkan untuk menggunakan https untuk ini, tapi terserah Anda. Contohnya menggunakan server http.
(☑️ artinya dilaksanakan, ? artinya direncanakan atau sedang dikembangkan)
Transportasi berdasarkan io_uring
, IOCP
, atau epoll
saat ini berada di luar cakupan.
Peti ini tidak menerapkan transmisi ulang berdasarkan acks dan timeout. Game memiliki cara lain untuk mencapai keandalan, terutama karena informasi sudah ketinggalan jaman pada saat mekanisme berbasis batas waktu mendeteksi paket yang hilang.
FPS misalnya mengirim input pemain untuk beberapa frame terakhir dengan setiap paket, jadi ketika ada yang hilang di kabel, paket berikutnya mengisi celah tersebut.
Kompresi status permainan dari server ke klien biasanya didasarkan pada paket terakhir yang diakui oleh klien. Gunakan acara MessageAcknowledged
dan nomor urut yang dikembalikan oleh send
untuk ini.
Lihat direktori contoh untuk contoh klien/server, gunakan perintah untuk menjalankannya:
cargo run -p server
cargo run -p client
Netstack hadir dengan makro turunan yang sedang dalam proses untuk struct (dan enum yang lebih baru).
# [ derive ( Debug , Serialize , Deserialize ) ]
pub struct Greeting {
pub id : u32 ,
pub to : String ,
pub message : String ,
}
MIT