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 的主要方式有三种。
手动复制文件
将文件手动复制到Loose 目录后,只要文件留在该目录中,就会随项目一起部署。
手动添加文件
- 使用 xcopy 将文件从项目目录复制到 \Layout\Image\Loose 目录。
Loose 目录中的文件仍在该目录中,它们就会持续被部署。手动复制到 Loose 目录的文件不会在生成或清理项目时被删除。要阻止这些文件被部署,必须将其从 Loose 目录中删除。
通过生成后事件复制
在 Visual Studio 中创建生成后事件来复制文件,可让文件在每次生成项目时都被复制到Loose 目录。此外,生成后事件可以使用 $(ProjectDir) 和 $(LayoutDir) 这两个 Visual Studio 属性,它们分别标识项目目录和布局目录。
例如,以下命令行会将文件 MyPicture.bmp 从项目目录复制到 Layout 目录下的 \Image\Loose,然后由部署过程将其复制到主机。
通过生成后事件添加文件
- 打开项目的属性页对话框。在生成事件下,选择生成后事件页面。
- 在命令行中,输入使用 xcopy 将文件从项目目录复制到 Layout\Image\Loose 目录的命令行。
通过生成后事件复制到
Loose 目录中的文件,只要仍在该目录中,就会继续被部署——即使生成后事件已从项目中移除也是如此。通过生成后事件复制到 Loose 目录中的文件在生成或清理项目时不会被删除。要阻止这些文件被部署,也必须将其从 Loose 目录中删除。将文件添加到项目
也可以将文件作为资源添加到项目中。项目资源会自动被复制到Loose 目录并随项目一起部署。
将文件作为项目资源添加
- 右键单击项目,然后选择添加、现有项。
- 选择要添加到项目的项。
- 打开资源的属性窗口,并确保内容属性设置为是。
Loose 目录并随项目一起部署。将文件从项目中移除也会将其从 Loose 目录中移除。
