ディスク サブセットの作成
このトピックでは、ゲームが 1 つのディスクに収まるように、ゲームのコンテンツのサブセットを持つディスクを作成する ("ディスクのサブセット化" とも呼ばれます) 方法について説明します。
多くの場合、ゲーム パッケージは 50 GB の Blu-ray ディスクに収まるよりも大きくなります。ディスクでサイズの大きなゲームを使用できるようにするには、複数のディスクにゲームを配置する (「複数ディスク機能」をご覧ください) か、ゲームが 1 つのディスクに収まるようにコンテンツのサブセットにトリミングする必要があります。
Exclude 属性を使用してゲームからコンテンツを除外する
splitpkg
にパスするサブセット .xml ファイルに Exclude
属性を使用して、コンテンツのサブセットを作成できます。
Exclude
を使用して、デバイス、機能、タグ、言語を除外します。 たとえば、ゲームにはシングルプレイヤー キャンペーンのセクションと、マルチプレイヤー オンライン プレイのセクションがあるかもしれません。 キャンペーンとマルチプレイヤー機能の提供に、既にインテリジェント デリバリーを使用しているかもしれません。 ディスクでは、キャンペーン機能のみを提供することにするかもしれません。 次の例に示すように、マルチプレイヤー機能を除外するゲーム ディスクを作成できます。
<Packages>
<Package Name="GameDisc" MaxDiscs="1">
<Exclude Features="Multiplayer" />
</Package>
</Packages>
このゲーム ディスクをインストールするときに、マルチプレイヤー機能のコンテンツは含まれません。
注意
ゲームが後で更新プログラムを受け取る場合 (またはゲーム ディスクのインストール時に更新プログラムがインストールされた場合)、マルチプレイヤー機能は Xbox コンテンツ配信ネットワークからダウンロードされます。
ゲームからコンテンツを削除する
ゲームからコンテンツを削除することで、ゲーム ディスクのサイズを小さくできます。 たとえば、キャンペーンとマルチプレイヤーの両方の機能があり、それぞれにオプションの 4K アセットもあるかもしれません。 次の例に示すように、チャンクを #
で区切ることで、複数のタグを必要とするチャンクとして宣言できます。
<Features>
<Feature Id="Campaign" DisplayName="Campaign" Tags="Campaign;4kAssets"
<Feature Id="Multiplayer" DisplayName="Multiplayer" Tags="Multiplayer;4kAssets"
</Features>
<Chunk Id="1" Tags="Campaign" />
<Chunk Id="2" Tags="Campaign#4kAssets" Devices="Xbox-Scarlett" />
<Chunk Id="3" Tags="Multiplayer" />
<Chunk Id="4" Tags="Multiplayer#4kAssets" Devices="Xbox-Scarlett" />
ここで、チャンク 2 は Xbox Series X|S 本体だけに、Campaign
と 4kAssets
の両方が指定されている場合にのみダウンロードされます。 ディスク サブセット ファイルを作成するときに、次の例に示すように、すべての 4kAssets
をゲーム ディスクから除外できます。
<Packages>
<Package Name="GameDisc" MaxDiscs="1">
<Exclude Tags="4kAssets" />
</Package>
</Packages>
この種類のタグ付けを使用するもう 1 つの方法は、次の例に示すように、ゲーム ディスクに不要なすべてのチャンクのタグを定義することです。
<Features>
<Feature Id="Campaign" DisplayName="Campaign" Tags="Campaign"
<Feature Id="Multiplayer" DisplayName="Multiplayer" Tags="Multiplayer"
<Feature Id="Default" Tags="OmitFromDisc" Hidden="true"
</Features>
<Recipes>
<Recipe Id="Default" IncludedFeatures="Default" />
</Recipes>
<Chunk Id="1" Tags="Campaign" />
<Chunk Id="2" Tags="Multiplayer" />
<Chunk Id="3" Tags="OmitFromDisc" />
<Chunk Id="4" Tags="OmitFromDisc" />
ここで、OmitFromDisc
タグを持つすべてのチャンクは、必ず既定で含まれる既定の機能に追加されます。 (これは、Microsoft Store ID 要素を持たない機能 ID を含むレシピがあるためです)。
splitpkg
用にこのサブセット .xml ファイルを作成すると、次の例に示すように、OmitFromDisc
チャンクがゲーム ディスクの一部になるのを防ぐことができます。
<Packages>
<Package Name="GameDisc" MaxDiscs="1">
<Exclude Tags="OmitFromDisc" />
</Package>
</Packages>