マルチプレイヤー
マルチプレイヤーのウェブゲームは、ブラウザーを通じてプレイヤーを共通の体験につなげます。バックエンドはセッションを接続し、ゲーム状態を交換し、どの行動を有効とするかを決めます。

1つの世界。共通のルール。
ブラウザーはゲームを描画し、各プレイヤーの入力を受け取ります。バックエンドは接続を保ち、次に起きることを調整します。対戦プレイでは、権威サーバーが行動を検証し、ゲーム状態を管理します。ターン制カードゲームと動きの速いアリーナでは、更新頻度、ネットワーク通信、接続が切れたときの復旧方法が異なります。
バックエンドの選択肢
マルチプレイヤー体験を支えるバックエンドの選択肢です。
| 名前 | 説明 | 確認すること |
|---|---|---|
| Boardgame.io | 共通のルールと状態を持つターン制ゲーム。 | 非公開の状態、ログイン、セーブデータを確認しましょう。 |
| Colyseus | TypeScriptのマルチプレイヤーサーバー。 | 更新頻度、サーバー検証、ホスティングを確認しましょう。 |
| Geckos.io | 動きの速いゲームのためのWebRTCネットワーク通信。 | UDPホスティング、STUN/TURN、状態同期を確認しましょう。 |
| Nakama | アカウント、マッチメイキング、マルチプレイヤー対戦。 | 対戦の権限、ストレージ、ホスティングを計画しましょう。 |
| Nengi | ゲーム状態の同期とプレイヤー予測。 | SDK、アダプター、ドキュメントのバージョンを合わせましょう。 |
| PartyServer | Cloudflare上のルーム単位のWebSocket。 | ルームの制限とCloudflareの割り当てを確認しましょう。 |
| Photon Realtime | ホスト型ルーム、マッチメイキング、メッセージ通信。 | プレイヤー数の上限、通信量、料金を確認しましょう。 |
| SmartFoxServer 2X | ゲームルーム、マッチメイキング、ソーシャル機能。 | ライセンス、ホスティング、WebSocketの設定を確認しましょう。 |
| Socket.IO | リアルタイムのメッセージ通信、ルーム、再接続。 | ゲームルール、状態同期、遅延への対応を計画しましょう。 |
| SpacetimeDB | 1つのデータベース内のゲームロジックとライブ状態。 | 権限、サブスクリプション、デプロイを計画しましょう。 |
マルチプレイヤー向けのエンジン選択
これらのエンジンはすべてマルチプレイヤーゲームに対応しています。まずエンジンを選び、その後で上の選択肢から互換性のあるバックエンドを選びましょう。

Babylon Lite
BabylonファミリーのWebGPU専用3Dエンジンで、ツリーシェイキングに対応したデータ指向のレンダラーとして構築されています。最新のGPUを基盤に、小さなバンドルサイズと高性能なグラフィックスを重視しています。

Cocos Creator
オールインワンエディターとWeb公開機能を備えた、クロスプラットフォーム対応の2D・3Dゲームエンジンです。Cocos CreatorはWeb Desktopビルド向けのWebGPUバックエンドをサポートしていますが、公式ドキュメントでは実験的機能とされています。

Construct 3
ブラウザー上で動作する2Dゲームエンジンで、イベントのビジュアルスクリプトと任意のJavaScriptに対応します。対応プラットフォームではWebGPUをサポートし、WebGPUを利用できない場合はWebGLを使用できます。

Defold
すぐに使える無料のゲームエンジンで、エディター、ランタイム、スクリプティング、ビルドパイプライン、デプロイツールを一つのワークフローにまとめています。複数のプラットフォーム向けに、コンポーネントベースの2Dまたは3Dゲームを制作できます。

PixiJS
ゲーム、アプリ、インタラクティブなデジタルコンテンツを制作するためのHTML5エンジンです。2DレンダラーはWebGPUまたはWebGLを使用し、ブラウザー内で高速かつ表現豊かなビジュアルを実現します。

PlayCanvas
2Dおよび3DのWeb体験を構築するためのオープンソースJavaScriptエンジンです。WebGLとWebGPUのレンダラー、モジュール化されたESモジュール、軽量ランタイムにより、最新のブラウザーやデバイスに対応します。


