Platform SDK: DirectX

同期起動

[C++]

アプリケーション セッションは、ステージング領域で準備され、起動される。1 人のプレーヤーがステージング領域を作成し、ほかのプレーヤーがそれに参加するのを待機する。プレーヤーは、IDirectPlay4::SetGroupConnectionSettings メソッドを使用して、作成されるアプリケーション セッションのプロパティを設定することができる。グループへの参加を検討しているほかのプレーヤーは、IDirectPlay4::GetGroupConnectionSettings メソッドを呼び出して、アプリケーション セッションのプロパティを確認することができる。十分な人数のプレーヤーがステージング領域に集まったら、任意のプレーヤーが IDirectPlay4::StartSession メソッドを呼び出して同期起動のシーケンスを開始することができる。

ステージング領域内のすべてのプレーヤーは、DPLCONNECTION 構造体を含む DPMSG_STARTSESSION システム メッセージを受信する。プレーヤーが外部ロビー クライアントを使用している場合、そのロビー クライアントは接続情報を IDirectPlayLobby3::RunApplication メソッドに渡すことにより、アプリケーションを起動することができる。プレーヤーが内部ロビーを使用している場合、アプリケーションは IDirectPlayLobby3::ConnectEx を呼び出すことにより、適切なセッションへの接続を確立することができる。詳細については、「外部ロビーによる開始のサポート」を参照すること。

[Visual Basic]

アプリケーション セッションは、ステージング領域で準備され、起動される (「ロビー セッション」を参照)。1 人のプレーヤーがステージング領域を作成し、ほかのプレーヤーがそれに参加するのを待機する。

プレーヤーは、DirectPlay4.SetGroupConnectionSettings メソッドを使用して、作成されるアプリケーション セッションのプロパティを設定することができる。十分な人数のプレーヤーがステージング領域に集まったら、任意のプレーヤーが DirectPlay4.StartSession メソッドを呼び出して同期起動のシーケンスを開始することができる。

ステージング領域内のすべてのプレーヤーは、接続に関する情報を含む DPSYS_STARTSESSION システム メッセージを受信する。プレーヤーが外部ロビー クライアントを使用している場合、そのロビー クライアントは DirectPlayLobby3.RunApplication メソッドを使用して、アプリケーションを起動することができる。プレーヤーが内部ロビーを使用している場合、アプリケーションは DirectPlayMessage.ReadSysMsgConnection を呼び出して接続設定を取得し、DirectPlayLobby3.SetConnectionSettings によってそれを設定してから DirectPlayLobby3.Connect を呼び出すことにより、適切なセッションへの接続を確立することができる。詳細については、「外部ロビーによる開始のサポート」を参照すること。