Ruang Kerja Klient-Server

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Server

Pengalaman Roblox secara default dimainkan dalam model klien-server, dan dijalankan dalam model server-klient. Roblox server adalah otoritas utama untuk menjaga keadaan pengalaman, dan bertanggung jawab atas menjaga semua klien terhubung dengan server.

A server grouping with connections to three client devices.
Server dengan koneksi ke tiga perangkat klien

Klien

Ketika pengalaman dijalankan, Roblox mengambil salinan dari model data "edit" yang Anda buat dan publikasi dari Studio dan mengeksekutannya di server Roblox sebagai model data "jalankan".

Klien yang terhubung juga menerima salinan model data runtime dan inisialisasi pemain, seperti menginisialisasi ransel pemain (inventaris) atau antarmuka pengguna lokal. Saat pengalaman memiliki Workspace.StreamingEnabled tetap benar, server hanya mengirim sebagian dari konten di bawah Workspace y

A diagram that maps objects between 'edit' and 'runtime' data models.

Replikasi

Server secara terus-menerus memperbarui klien terhubung, menjaga semuanya dalam sinkronisasi di seluruh server dan klien melalui proses yang disebut replikasi , yang meng sinkronisasi model data, simulasi fisik, dan pesan chat. Replikasi logik ada di klien dan server untuk menjamin sinkronisasi.

Data

Perubahan model data dapat terjadi dalam berbagai kasus, seperti ketika sesuatu di dunia 3D dibuat atau kepemilikan dunia 3D berubah. Ini biasanya terjadi ketika script di server atau klien membuat perubahan yang perlu dibicarakan di sisi lain dari batas antara server dan klien. Berikut adalah grafik umum untuk replikasi data.

KlienServer >
>

A diagram of one client communicating with the server.

Komunikasi dari klien ke server. Misalnya, klien menekan tombol P untuk minum ramuan kebodohan, dan memberitahu server untuk membuat karakter pemain itu tidak terlihat bagi semua pemain lain.

ServerKlien >
>

A diagram of the server communicating with one client.

Komunikasi dari server ke satu klien spesifik. Misalnya, seorang pemain bergabung dengan pengalaman dan server mempopulerkan inventaris pemain dengan serangkaian item.

ServerSemua Klien >
>

A diagram of the server communicating with all connected clients.

Komunikasi antara server dan semua klien yang terhubung. Misalnya, menampilkan timer countdown ke semua peserta dalam balapan.

Fisika

Roblox menggunakan mesin fisika tubuh keras, yang bertanggung jawab atas menghitung gerakan dan interaksi bagian di dunia 3D. Secara default, semua bagian di Roblox adalah tubuh keras dan berpartisipasi dalam fisika simulasi, kecuali jika ditentukan secara khusus. Anda juga dapat mengumpulkan beberapa bagian bersama-sama menjadi asal-usul, yang mesin fisika menganggap sebagai asal-usul tubuh keras.


A single block part in the shape of a cube that represents a single assembly.
1 kumpulan; 1 bagian
A player character that represents a single assembly of 18 individual parts.
1 kumpulan; 18 bagian
A pirate ship mesh that represents a single assembly of 179 individual parts.
1 konsentrasi; 179 bagian

Roblox menggandakan data simulasi fisika antara server dan klien ketika perlu. Untuk membantu dengan kinerja pelaksanaan, Roblox dapat menetapkan kesahatan pemilikan assemblies ke klien tertentu atau server. Ini berarti bahwa klien atau server dapat bertanggung jawab atas simulasi fisika dari assemblies tersebut. Klien lain menerima pembaruan

Kesetaraan kepemilikan bagian ditunjukkan melalui tingkat tanda-tanda berwarna

chat

Roblox mengkloning pesan obrolan antara server dan klien. Server bertanggung jawab untuk menyaring pesan obrolan dan memutuskan pesan mana yang harus di replikasi ke klien lain. Misalnya, server dapat menyaring pesan yang berisi kata-kata kasar atau terlalu panjang.