サーバー
Roblox エクスペリエンスはデフォルトでマルチプレイヤーであり、クライアント-サーバーモデルで実行されます。Roblox の サーバー は、エクスペリエンスの状態を維持する最終権限を持ち、すべての接続されたクライアントをサーバーとシンクロして保持する責任があります。
クライアント
エクスペリエンスが実行されると、Roblox は、Studio から構築して公開した「編集」データモデルのバージョンをコピーし、「ランタイム」データモデルとして Roblox サーバーに実行します。
接続されたクライアントは、ランタイムデータモデルのコピーと、プレイヤーのバックパック (インベント持ち物リスト) などの初期化を受信すると、サーバーは最初に Workspace.StreamingEnabled を true に設定します。サーバーは次に、最も近いコンテンツの下の Class
レプリケーション
サーバーは常に接続されたクライアントを更新し、サーバーとクライアント間のすべてをシンクロします。これは、データモデル、物理シミュレーション、およびチャットメッセージを同期するプロセス、「レプリケーション」を通じて、サーバーとクライアントの両方にレプリケーションロジックが存在します。
データ
データモデルの変更は、3D 世界の何かが作成されたり、3D 世界のプロパティが変更されたりするようなさまざまな場合に発生することがあります。これは通常、サーバーまたはクライアントの 3D 世界の変更に対応する必要がある場合にスクリプトが作成されるときに発生します。次の図に示すように、データのレプリケ
物理
Roblox は、3D 世界のパーツの移動とインタラクションを計算するための堅体物理エンジンを使用します。デフォルトでは、Roblox のすべてのパーツは堅体物理であり、シミュレートされた物理に参加します。また、Roblox のパーボディをグループ化してアセンブリにまとめることもできます。
Roblox は、必要に応じてサーバーとクライアントの間で物理シミュレーションデータをレプリケートします。シミュレーションパフォーマンスを助けるために、Roblox は特定のクライアントまたはサーバーにアセットの所有を割り当てることができます。これにより、クライアントまた
チャット
Roblox は、サーバーとクライアントの間でチャットメッセージをレプリケートします。サーバーは、チャットメッセージをフィルタリングし、どのメッセージを他のクライアントにレプリケートするかを決定します。たとえば、サーバーは不快な言葉を含むメッセージをフィルタリングし、長すぎるメッセージをレプリケートします。