Serwer
Doświadczenia Roblox są wieloosobowe domyślnie i działają w modelu klient-serwer. Roblox serwer jest ostateczną autorytetem do utrzymywania stanu doświadczenia i jest odpowiedzialny za utrzymywanie wszystkich powiązanych klientów w równolegle z serwerem.
Klient
Gdy doświadczenie zostanie uruchomione, Roblox kopiuje wersję modelu danych "edytuj" którą zbudowałeś i opublikowałeś w Studio i uruchamia ją na serwerach Roblox jako model danych "czasu uruchomienia".
Połączone klienty otrzymują również kopię modelu danych czasu uruchomienia i inicjacji gracza, takich jak inicjalizacja plecaka gracza (wyposażenie) lub lokalnej interfejsu użytkownika. Gdy ustawienie Workspace.StreamingEnabled na prawdziwie, serwer wysyłuje najpierw podstawowy zestaw treści pod
Replikacja
Serwer stale aktualizuje połączone klienty, utrzymując wszystko w równolegle w całym serwerze i klientach poprzez proces zwany replikacją , który synchronizuje model danych, symulację fizyczną i wiadomości czatu. Logika replikacji istnieje zarówno na klientach, jak i na serwerze, aby zapewnić synchronizację.
Dane
Zmiany modelu danych mogą następować w różnych przypadkach, takich jak gdy coś w świecie 3D jest utworzone lub właściwość świata 3D zmienia się. To zwykle następuje, gdy na serwerze lub klienta pojawia się skrypt lub zmiana, która musi zostać odzwierciedlona na drugiej stronie granicy klienta-serwera. Poniższe diagrafy pokazują zwykłe scenariusze dla replikacji danych.
Fizyka
Roblox używa trudnego silnika fizyki ciała, który jest odpowiedzialny za obliczanie ruchu i interakcji części w świecie 3D. Domyślnie wszystkie części w Roblox są trwałymi ciałami i uczestniczą w symulowanej fizyce, chyba że inaczej określono. Możesz również zgrupować wiele części w jedne zestawy, które silnik fizyki traktuje jako jeden trwały ciało.
Roblox replikuje dane simulacji fizyki między serwerem a klientami, jeśli to konieczne. Aby pomóc w wydajności wykonywanie, Roblox może przypisać własność zespołów do określonego klienta lub serwera. To oznacza, że klient lub serwer może być odpowiedzialny za simulację fizyki tego zespołu. Inne klienty otrzymują aktualiz
Czat
Roblox replikuje wiadomości czatu między serwerem a klientem. Serwer jest odpowiedzialny za filtrowanie wiadomości czatu i decyzję, która wiadomość zostanie wyświetlona dla innych klientów. Na przykład serwer może filtrować wiadomości, które zawierają obelgi lub są zbyt długie.