Client-Server-Laufzeit

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

Server

Roblox-Erlebnisse sind standardmäßig multijährig und laufen in einem Client-Server-Modell. Die Roblox- Server ist die ultimative Autorität für die Wartung des Zustands des Erlebnisses und ist verantwortlich dafür, alle verbundenen Clients mit dem Server in Einklang zu bringen.

A server grouping with connections to three client devices.
Server mit Verbindungen zu drei Client-Geräten

Client

Wenn eine Erfahrung ausgeführt wird, kopiert Roblox eine Version des "bearbeiten"-Datenmodells, das du von Studio ausgebaut und veröffentlicht hast, und läuft sie auf Roblox-Servern als "Laufzeit"Modellaus.

Verbindete Clients erhalten auch eine Kopie der Laufzeit-Datenmodell und jeder Initialisierung des Spielers, z. B. die Initialisierung eines Spieler:in' Rucksacks (Inventar) oder die lokale Benutzeroberfläche. Wenn ein Erlebnis Workspace.StreamingEnabled auf wahr gesetzt ist, sendet der Server zunächst nur eine Unterseite des Inhalts unter Workspace , die dem Client am n

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

Replikation

Der Server aktualisiert ständig verbundene Clients, indem er alles im Sinne des gesamten Servers und der Clients durch einen Prozess namens Replikation synchronisiert. Die Replikationslogik existiert sowohl auf dem Client als auch auf dem Server, um die Datenmodellierung, die Physiksimulation und die Chat-Nachrichten zu synchronisieren.

Daten

Datenmodell-Änderungen können in einer Vielzahl von Fällen auftreten, z. B. wenn etwas in der 3D-Welt erstellt wird oder ein Eigenschaft der 3D-Welt sich ändert. Dies geschieht in der Regel, wenn ein Skript auf dem Server oder Client eine Änderung vornimmt, die auf der anderen Seite der Client-Server-Grenze reflektiert werden muss. Die folgenden Diagramme zeigen häufige Szenarien für die Datenreplikation.

ClientServer >
>

A diagram of one client communicating with the server.

Kommunikation von einem Client zum Server. Zum Beispiel drückt ein Client die P-Taste, um einen Unsichtbarkeitstrank zu trinken, und sagt dem Server, den Charakter dieses Spieler:infür alle anderen Spieler unsichtbar zu machen.

ServerClient >
>

A diagram of the server communicating with one client.

Kommunikation vom Server zu einem bestimmten Client. Zum Beispiel schließt ein Spieler die Erfahrung ab und der Server beliefert dieses Spieler:inmit einer Reihe von Gegenständen.

ServerAlle Clients >
>

A diagram of the server communicating with all connected clients.

Kommunikation zwischen dem Server und allen verbundenen Clients. Zum Beispiel, Anzeigen eines Countdown-Timers für alle Teilnehmer in einem Rennen.

Physik

Roblox verwendet eine starre Körperphysik-Engine, die für die Berechnung der Bewegung und Interaktion von Teilen in der 3D-Welt verantwortlich ist. Standardmäßig sind alle Teile in Roblox starre Körper und beteiligen sich an der simulierten Physik, es sei denn, sie werden anders angegeben. Sie können auch mehrere Teile in Gruppen zusammenführen, was die PhysikEngine als einzelnes starres Körper behandelt.


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

Roblox repliziert Physiksimulationsdaten zwischen dem Server und Clients, wenn nötig. Um der Simulation des Physikums zu helfen, kann Roblox die Besitzung von Assemblages einem bestimmten Client oder Server zuweisen. Dies bedeutet, dass der Client oder Server für die Simulation der Physik dieses Assemblages verantwortlich sein kann. Andere Clients erhalten Updates über die Position und den Bewegung des Assemblages vom besitzenden Client oder Server. Die Besitzung wird normalerweise automatisch festgelegt

Teilbesitz durch farbige Umrisslinien angezeigt

Chatten

Roblox repliziert Chat-Nachrichten zwischen dem Server und dem Client. Der Server ist für das Filtern von Chat-Nachrichten und das Entscheiden, welche Nachrichten an andere Clients repliziert werden sollen, verantwortlich. Zum Beispiel kann der Server Nachrichten filtern, die Inkommodität enthalten oder zu lang sind.