既定のユーザー必須 - シンプルなユーザー モデル
ゲームが必須の既定のユーザーを持つことを選択した場合、オペレーティング システムは起動前にサインインしているユーザーが存在することを保証します。さらに、そのユーザーがサインアウトした場合、コンソール上ではゲームがサスペンドされ、PC ではゲームが終了されます。既定のユーザーに対してサインアウト イベントを受け取ることはありません。これをシンプルなユーザー モデルと呼びます。 ほとんどのゲームは 1 つのローカル ユーザー (および場合によっては多数のリモート ユーザー) を持つため、これによりユーザー管理を簡素化できます。すぐに AddDefaultUserSilently を指定して XUserAddAsync を呼び出すことができ、UI なしにそのユーザーを確実に取得できることが 100% 保証されます。AddDefaultUserSilently を指定した XUserAddAsync への以降のすべての呼び出しは、常にこの既定のユーザーを返します。 追加の利点として、これを使用してそのユーザーに関する情報を収集する際のレイテンシーを隠すこともできます。起動時に既定のユーザーを取得することが保証されているため、自身のバックエンド サービスに Web リクエストを送信してあらゆるデータを収集でき、ゲームのメイン メニューに到達する前に結果が返ることを合理的に期待できます。 ゲームは XUserAddAsync を使用して追加のユーザーをゲームに自由に追加できます。既定のユーザーの場合とは異なり、ゲームはこれらの追加されたユーザーに対するサインアウト イベントを受け取ることができます。 ゲームを知らないユーザーがタイル経由でゲームを再起動した場合、ゲームの古いインスタンスは終了され、そのユーザーには新しく起動されたゲームのインスタンスが提供されます。既定のユーザー不要 - 高度なユーザー モデル
これは、Microsoft Game Development Kit (GDK) におけるユーザー モデルの現在の動作です。この場合、起動時にサインインしているユーザーが存在する保証はありません。このオプションは、ユーザーの出入りが想定されるゲームに適しています。また、XBOX サービスと深く統合されていないゲームにも適したオプションです。 このオプションは高度なユーザー モデルとも呼ばれます。PC とコンソールでのシンプルなユーザー モデルの違い
リテールでは、シンプルなユーザー モデルの動作について PC とコンソールの間に大きな違いが 1 つあります。- コンソール上では、既定のユーザーがサインアウトするとゲームがサスペンドされます。
- PC 上では、既定のユーザーがサインアウトするとゲームが終了されます。
- コンソール上では、シンプルなユーザー モデルを使用しているルース デプロイのゲームは、既定のユーザーが既にサインインしていない限り、起動が許可されません。
- PC 上では、シンプルなユーザー モデルを使用しているルース デプロイのゲームは、ユーザーなしで起動できます。ただし、ゲームが XUserAddAsync を呼び出したとき、誰もサインインしていないと、ゲームは終了され、ユーザーのサインインを支援するために PC Bootstrapper が起動されます。ユーザーが XBOX ネットワーク (XBOX Live とも呼ばれる) に完全にサインインしている限り、以降の起動は問題なく動作します。
