> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 方法: Visual Studio を使用したゲーム リソース ファイルのデプロイ

> 方法: Visual Studio を使用したゲーム リソース ファイルのデプロイ

Visual Studio を使用して XBOX One Software Development Kit プロジェクトをデプロイまたは起動すると、プロジェクトのサブディレクトリ `Gaming.Xbox.XboxOne.x64\Layout\Image\Loose` の内容がコンソールにデプロイされます。XBOX 向けの Microsoft Game Development Kit プロジェクトをビルドすると、コンパイル済みのアプリケーション ファイルが自動的にこのディレクトリにコピーされ、デプロイされます。テクスチャやシェーダーなどの追加のゲーム リソースをデプロイするには、それらのファイルも XBOX One XDK プロジェクトの `Loose` サブディレクトリにコピーする必要があります。

`Loose` ディレクトリは、プロジェクト ディレクトリからの相対パスです。たとえば、プロジェクトが c:\MyProjects\D3D12Game1\D3D12Game1 ディレクトリに保存されている場合、`Loose` ディレクトリはプロジェクトのサブディレクトリであり、c:\MyProjects\D3D12Game1\D3D12Game1\Gaming.Xbox.XboxOne.x64\Layout\Image\Loose にあります。

手動またはビルド プロセスの一部として `Loose` ディレクトリに配置されたファイルは、アプリと共にデプロイされます。

`Loose` ディレクトリ内のファイルは、`Loose` ディレクトリ内での相対パスと同じパスでデプロイされます。たとえば、Loose\Models 内のファイルは、コンソール上の Models サブディレクトリにデプロイされます。

`Loose` ディレクトリ内のファイルは、プロジェクトのビルドまたはクリーン時に削除されません (プロジェクト内にコンテンツとして存在する場合を除きます。以下の「プロジェクトへのファイルの追加」を参照してください)。

Gaming.Xbox.XboxOne.x64\Layout\Image\Loose にファイルを追加するには、主に 3 つの方法があります。

* [ファイルの手動コピー](#ID4ESC)
* [ビルド後イベントによるコピー](#ID4EXD)
* [プロジェクトへのファイルの追加](#ID4E6F)

<a id="ID4ESC" />

## ファイルの手動コピー

ファイルを `Loose` ディレクトリに手動でコピーすると、ディレクトリ内にある限り、そのファイルはプロジェクトと共にデプロイされます。

#### 手動でファイルを追加するには

* **xcopy** を使用して、プロジェクト ディレクトリから \Layout\Image\Loose ディレクトリにファイルをコピーします。

この方法は迅速で簡単ですが、必要なファイルをすべてコピーしないビルド ラボや開発者と作業する場合に問題が生じる可能性があります。

`Loose` ディレクトリに手動でコピーされたファイルは、ディレクトリ内にある限り、引き続きデプロイされます。`Loose` ディレクトリに手動でコピーされたファイルは、プロジェクトのビルドまたはクリーン時には削除されません。ファイルのデプロイを停止するには、`Loose` ディレクトリからファイルを削除する必要があります。

<a id="ID4EXD" />

## ビルド後イベントによるコピー

Visual Studio でファイルをコピーするビルド後イベントを作成すると、プロジェクトをビルドするたびに `Loose` ディレクトリにファイルがコピーされます。さらに、ビルド後イベントでは、プロジェクト ディレクトリとレイアウト ディレクトリを識別する Visual Studio プロパティである `$(ProjectDir)` と `$(LayoutDir)` を利用できます。

たとえば、次のコマンド ラインは、ファイル MyPicture.bmp をプロジェクト ディレクトリから Layout ディレクトリ内の \Image\Loose にコピーします。ここからデプロイによってコンソールにコピーされます。

```text theme={null}
xcopy $(ProjectDir)MyPicture.bmp $(LayoutDir)Image\Loose  
```

#### ビルド後イベントを使用してファイルを追加するには

1. プロジェクトの **\[プロパティ ページ]** ダイアログ ボックスを開きます。**\[ビルド イベント]** の下で、**\[ビルド後のイベント]** ページを選択します。

**図 1.   ビルド後イベントのコマンド ラインを指定します。**

<img src="https://mintcdn.com/microsoft-4404708b/6TXzXmujKayly5Sf/images/gdk/tools/property_page_post_build_event.png?fit=max&auto=format&n=6TXzXmujKayly5Sf&q=85&s=cfb00340e22c3878087e359b539a02ff" alt="Direct3DGame1 Property Pages" width="640" height="454" data-path="images/gdk/tools/property_page_post_build_event.png" />

1. **\[コマンド ライン]** で、**xcopy** を使用してプロジェクト ディレクトリから Layout\Image\Loose ディレクトリへファイルをコピーするコマンド ラインを入力します。

たとえば、**xcopy**\*\*$(ProjectDir)***file-name***$(LayoutDir)Image\Loose\*\* のように入力します。ここで、*file-name* はコピーしたいファイルの名前と一致させます。

<Note>
  ビルド後イベントで `Loose` ディレクトリにコピーされたファイルは、ディレクトリ内にある限り、ビルド後イベントがプロジェクトから削除された後も引き続きデプロイされます。ビルド後イベントで `Loose` ディレクトリにコピーされたファイルは、プロジェクトのビルドまたはクリーン時には削除されません。ファイルのデプロイを停止するには、`Loose` ディレクトリからも削除する必要があります。
</Note>

<a id="ID4E6F" />

## プロジェクトへのファイルの追加

ファイルはリソースとしてプロジェクトに追加することもできます。プロジェクト リソースは自動的に `Loose` ディレクトリにコピーされ、プロジェクトと共にデプロイされます。

#### プロジェクト リソースとしてファイルを追加するには

1. プロジェクトを右クリックし、**\[追加]、\[既存の項目]** を選択します。
2. プロジェクトに追加する項目を選択します。
3. リソースのプロパティ ウィンドウを開き、**\[コンテンツ]** プロパティが **\[はい]** に設定されていることを確認します。

この方法では、実行可能ファイルなどの他のプロジェクト ファイルとまったく同じようにファイルが扱われます。プロジェクトのビルドまたはクリーン時にファイルは削除され、自動的に `Loose` ディレクトリにコピーされ、プロジェクトと共にデプロイされます。プロジェクトからファイルを削除すると、`Loose` ディレクトリからも削除されます。

<a id="ID4EEH" />

## 関連項目

[XBOX One のデプロイ](/home/setup-install/concepts/deployment)


## Related topics

- [XBOX 開発向けの Visual Studio プロパティ](/ja-jp/tools/tools-console/visualstudio/durango-property-pages.md)
- [コンソール開発向け Visual Studio](/ja-jp/tools/tools-console/visualstudio/visualstudio.md)
- [Visual Studio を使用した PC プロジェクトのデバッグ](/ja-jp/tools/tools-pc/visualstudio/gr-vs-debugging-with-visualstudio.md)
- [Visual Studio でのプロファイルガイド付き最適化](/ja-jp/tools/tools-console/pgo/pgo_full.md)
- [Visual Studio](/ja-jp/tools/tools-console/visualstudio/index.md)
