Czas działania w modelu klient-serwer

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

Serwer

Gry Roblox są domyślnie wieloosobowe i działają w modelu klient-serwer. Serwer Roblox jest ostateczną władzą odpowiedzialną za utrzymanie stanu gry, a jego zadaniem jest synchronizowanie wszystkich podłączonych klientów z serwerem.

Grupa serwerów z połączeniami do trzech urządzeń klienckich.
Serwer z połączeniami do trzech urządzeń klienckich

Klient

Gdy gra działa, Roblox kopiuje wersję modelu danych "edycji", który zbudowałeś i opublikowałeś z Studio, i uruchamia go na serwerach Roblox jako model danych "czas działania".

Podłączone klienci również otrzymują kopię modelu danych czasowego, a wszelkie inicjalizacje gracza odbywają się, takie jak inicjalizacja plecaka gracza (inwentarz) lub lokalny interfejs użytkownika. Gdy gra ma Workspace.StreamingEnabled ustawione na true, serwer początkowo wysyła tylko podzbiór treści znajdujący się w Workspace, który jest najbliżej klienta. Następnie klient renderuje 3D świat i zaczyna uruchamiać wszystkie odpowiednie skrypty.

Diagram ilustrujący obiekty między modelami danych 'edycji' i 'czas działania'.

Replikacja

Serwer nieustannie aktualizuje podłączonych klientów, utrzymując wszystko w synchronizacji dzięki procesowi zwanemu replikacją, który synchronizuje model danych, symulację fizyki i wiadomości czatu. Logika replikacji istnieje zarówno po stronie klienta, jak i serwera, aby zapewnić synchronizację.

Zmiany modelu danych mogą występować w różnych przypadkach, takich jak gdy coś w świecie 3D jest tworzone lub właściwość świata 3D się zmienia. Zwykle występuje to, gdy skrypt na serwerze lub kliencie dokonuje zmiany, która musi zostać odzwierciedlona po drugiej stronie granicy klient-serwer. Poniższe diagramy pokazują typowe scenariusze replikacji danych.

Klient → Serwer


Diagram przedstawiający komunikację jednego klienta z serwerem.
Komunikacja z dowolnego klienta do serwera. Na przykład, klient naciska klawisz P, aby wypić miksturę niewidzialności i informuje serwer, aby uczynił postać tego gracza niewidzialną dla wszystkich innych graczy.
Serwer → Klient


Diagram przedstawiający serwer komunikujący się z jednym klientem.
Komunikacja z serwera do jednego konkretnego klienta. Na przykład, gracz dołącza do gry, a serwer napełnia inwentarz tego gracza zestawem przedmiotów.
Serwer → Wszyscy Klienci


Diagram przedstawiający serwer komunikujący się ze wszystkimi podłączonymi klientami.
Komunikacja między serwerem a wszystkimi podłączonymi klientami. Na przykład, wyświetlanie timera odliczającego do wszystkich uczestników w wyścigu.
©2026 Roblox Corporation. Nazwa Roblox, logo Roblox oraz hasło „Powering Imagination” należą do naszych zarejestrowanych i niezarejestrowanych znaków towarowych na terenie Stanów Zjednoczonych oraz w innych krajach.