Microsoft DirectX 8.0 (C++)

セッションの作成と管理

ゲームのセッションとは、特定のマルチプレーヤー ゲームの 1 つのインスタンスである。1 つのセッションには同時にプレイする複数のユーザーがあり、それぞれが自分のコンピュータ上にゲーム クライアントを持っている。プレーヤーとは、ゲームの中のエンティティであり、各ゲームによって定義される。各ユーザーが、1 つのゲームに 1 人以上のプレーヤーを持つ場合もある。ただし、ゲーム アプリケーションは、個別の Microsoft® DirectPlay® インターフェイスまたは各プレーヤーのオブジェクトを使用して、これらのプレーヤーをアプリケーション自身で管理しなければならない。

セッション作成の最初の手順は、ユーザー グループの収集である。2 つの基本的方法がある。

セッションがアレンジされると、ゲームが起動し、ゲームプレーが開始される。セッションが進むにつれて、プレーヤーがセッションから消えたり、新しいプレーヤーが追加されたりする。詳細は個々のゲームによって異なる。

マルチプレーヤー ゲームでは、各ユーザーの UI は、セッション内のほかのすべてのユーザーの UI と同期することができる。したがって、マルチプレーヤー セッションの管理には、ユーザー間での継続的なメッセージのストリームが必要となる。たとえば、プレーヤーが移動するたびにメッセージが送信され、セッション内のほかのすべてのゲーム クライアント上でのそのプレーヤーの位置が更新される。DirectPlay の重要部分は、セッション内のすべてのコンピュータ間での効率的かつ柔軟なメッセージ送信をサポートする API 部分である。

セッションでのメッセージ送信のトポロジ構築には、主に 2 つの方法がある。ピアツーピアクライアント/サーバーである。どちらのトポロジにも利点と制約があるため、どちらが自分のゲームに適しているかを評価する必要がある。

ここでは説明するトピックは、次のとおりである。