Multiplayer API
Bookmark the permalink.

Jaringan Konsep Sistem HLAPI

Note: UNet terdepresi, dan akan dihapus dari Unity di masa depan. Sistem baru sedang berkembang. Untuk informasi lebih lanjut dan langkah-langkah berikutnya melihat is .

Server dan Host

Dalam sistem High Level APISistem untuk membangun kemampuan multiplayer untuk permainan Unity. Ini dibangun di atas lapisan komunikasi real-time transportasi tingkat bawah, dan menangani banyak tugas umum yang diperlukan untuk permainan multiplayer. More info
Lihat di Glossary
Unity (HLAPI), game multiplayer meliputi:

  • A server: Sebuah server adalah contoh dari permainan yang semua pemain lain terhubung ke ketika mereka ingin bermain bersama. Server sering mengelola berbagai aspek permainan, seperti menjaga skor, dan mentransmisikan data kembali ke klien.

  • Sitemap Klien adalah contoh dari permainan yang biasanya terhubung dari komputer yang berbeda ke server. Klien dapat menghubungkan jaringan lokal, atau online.Clients: Clients are instances of the game that usually connect from different computers to the server. Clients can connect over a local network, or online.

Sebuah client adalah contoh dari permainan yang terhubung ke server, sehingga orang bermain itu dapat bermain game dengan orang lain, yang terhubung pada klien mereka sendiri.

Server mungkin merupakan “server yang didedikasikan”, atau “server host”.

  • Dedicated server: Ini adalah contoh permainan yang hanya berjalan untuk bertindak sebagai server.

  • Host server: Ketika tidak ada dedicated server, salah satu klien juga memainkan peran server. Klien ini adalah "host server". Server host menciptakan satu contoh permainan (disebut host), yang bertindak sebagai server dan klien.

Diagram di bawah ini mewakili tiga pemain dalam permainan multiplayer. Dalam permainan ini, satu klien juga bertindak sebagai tuan rumah, yang berarti klien itu sendiri adalah "klien lokal". Klien lokal terhubung ke server host, dan keduanya berjalan di komputer yang sama. Dua pemain lain adalah klien jarak jauh - itu, mereka berada di komputer yang berbeda, terhubung ke server host.

This diagram shows two remote clients connected to a host.
Diagram ini menunjukkan dua klien jarak jauh yang terhubung ke host.

host adalah satu contoh dari permainan Anda, bertindak baik server dan client pada saat yang sama. Host menggunakan jenis klien internal khusus untuk komunikasi klien lokal, sementara klien lain adalah klien jarak jauh. Klien lokal berkomunikasi dengan server melalui panggilan fungsi langsung dan antrian pesan, karena dalam proses yang sama. Ini sebenarnya berbagi SceneAdegan berisi lingkungan dan menu permainan Anda. Pikirkan setiap file Adegan unik sebagai tingkat yang unik. Di setiap Adegan, Anda menempatkan lingkungan, hambatan, dan dekorasi, pada dasarnya merancang dan membangun permainan Anda dalam potongan-potongan. More info
Lihat di Glossary
dengan server. Klien jarak jauh berkomunikasi dengan server melalui koneksi jaringan reguler. Ketika Anda menggunakan HLAPI Unity, ini semua ditangani secara otomatis untuk Anda.

Salah satu tujuan dari sistem multiplayer adalah untuk kode untuk klien lokal dan klien jarak jauh menjadi sama, sehingga Anda hanya perlu memikirkan satu jenis klien sebagian besar waktu ketika mengembangkan permainan Anda. Dalam kebanyakan kasus, Unity menangani perbedaan ini secara otomatis, sehingga Anda harus jarang perlu memikirkan perbedaan antara kode Anda berjalan pada klien lokal atau klien jarak jauh.

Instantiate and Spawn

Ketika Anda membuat permainan pemain tunggal Dalam Unity, Anda biasanya menggunakan metode GameObject.Instantiate untuk membuat GameObject baru pada runtime. Namun, dengan sistem multiplayer, server itu sendiri harus "spawn" GameObjects untuk mereka aktif dalam permainan jaringan. Ketika pemijatan server GameObjects, itu memicu penciptaan GameObjects pada klien yang terhubung. Sistem pemijatan mengelola siklus hidup GameObjectObjek mendasar dalam adegan Unity, yang dapat mewakili karakter, props, pemandangan, kamera, waypoints, dan banyak lagi. Fungsi GameObject didefinisikan oleh Komponen yang melekat padanya. More info
Lihat di Glossary
, dan menyinkronkan keadaan GameObject berdasarkan bagaimana Anda mengatur GameObject up.

Untuk rincian lebih lanjut tentang jaringan instansi dan pemijahan, lihat dokumentasi pada Bookmark the permalink..

Pemain dan Pemain Lokal

Multiplayer Unity sistem HLAPI menangani pemain GameObjects berbeda untuk non-player GameObjects. Ketika pemain baru bergabung dengan permainan (ketika klien baru terhubung ke server), bahwa GameObject pemain menjadi "pemain lokal" GameObject pada klien pemain itu, dan Unity mengasosiasikan koneksi pemain dengan GameObject pemain. Satu pemain GameObject untuk setiap orang bermain game, dan rute perintah jaringan untuk GameObject individu. Pemain tidak dapat membayangkan command pada GameObject pemain lain, hanya milik mereka sendiri.

Untuk rincian lebih lanjut, lihat dokumentasi pada Pemain GameObjects.

Authority

Server dan klien dapat mengelola perilaku GameObject. Konsep “penulis” mengacu pada bagaimana dan di mana GameObject dikelola. HLAPI Unity didasarkan pada “ otoritas server” sebagai state default, di mana Server (host) memiliki wewenang atas semua GameObjects yang tidak mewakili pemain. Pemain GameObjects adalah kasus khusus dan diperlakukan sebagai memiliki " otoritas lokal". Anda mungkin ingin membangun permainan Anda menggunakan sistem otoritas yang berbeda - untuk rincian lebih lanjut, lihat Network Authority.

Multiplayer API
Bookmark the permalink.