Strixアーキテクチャの概要

Strixはいくつかの構成要素から構築されています。

  1. Strixサーバー: サーバー側アプリケーション。

  2. Strix Cloud: Strixゲームサーバーをサービスとして利用するクラウドソリューション。Strix Cloudのウェブインターフェイスを利用してアクセスできます。

  3. Strix Net/Strix Client: Strixの基本機能を実装するクライアント側ライブラリ。

  4. Strix SDK: 特定のゲームエンジンに合わせたStrixの機能を提供するプラグイン。

StrixサーバーとStrix Cloud

Strix Cloud上に新しいアプリケーションを作成すると、サーバーのクラスターを追加できます。クラスターは、中央のマスターサーバーに接続されたいくつかのルームサーバーです。

マスターサーバー

Strixのサーバーには、マスターとルームという2つのタイプがあります。マスターサーバーには、接続されている各ルームサーバーと、それらのサーバー上のルームに関する最新情報が含まれています。マスターは、特定のクラスターのエントリポイントとして機能します。クライアントは検索操作を実行して、特定のルームまたはルームサーバーを検索できます。

ルームサーバー

ルームサーバーは、プレイヤーが参加できるルームを実行します。ルームサーバーは、ルームのメンバー間の通信をルーティングし、全てのルームのメンバーとルームのプロパティの情報を保持します。ルームサーバーはさまざまなルームを含むことができます。ルームの作成/削除はゲームアプリケーションが処理します。Strix Cloudインターフェースを通じてルームサーバーを構成し、ルーム数1秒あたりのメッセージ数を制限できます。

ルームサーバーは、特定のマップまたはゲームのインスタンスを実行するのではなく、プレイヤーのリストを維持し、プレイヤー間のメッセージを処理します。個々のクライアントにはそれぞれ自身のゲーム状態があり、サーバーを介してルーティングされる他のプレイヤーからのさまざまなメッセージによって状態を更新します。Strixサーバーは、権限、接続、ルーティング、ルーム/クライアントプロパティ管理を処理します。

注釈

マスターサーバーがルームサーバーを兼ねることもできます。これは、単純なテスト用のクラスターで役立ちます。

Strix Net/Strix Client

Strixのクライアント側ライブラリで、Strixの基本機能を提供します。このライブラリがStrixサーバーとの間でメッセージを送受信します。また、マッチメイキング、移動補間、オブジェクト同期といったゲームに特有の機能の実装も含まれています。

Strix SDK

Strixでは特定のゲームエンジン用にSDKを提供しているため、Strixを使用した開発はシンプルかつ容易であり、既存の開発プロセスに適合します。新しいツールやスクリプト言語/プログラム言語を学ぶ必要はありません。Strix Unreal SDKは主にBlueprint関数とアクターコンポーネントとしてStrixの機能を提供していますが、高度な用途のためのC++ APIも利用できます。