Windows 的 Visual Studio 项目生成
Introduces Visual Studio project generation for Windows and how to use it.
阅读时间5 分钟最后更新于 1 个月前
创建 Visual Studio 解决方案 (Create Visual Studio Solution) 构建设置使 Unity 生成 Visual Studio 解决方案而不是构建播放器。生成 Visual Studio 解决方案使您能够改变构建过程。例如,您可以执行以下操作:
- 修改应用程序的清单。
- 添加 C++ 代码。
- 修改嵌入式资源。
- 附带调试器启动应用程序。
注意:此选项仅在使用 Windows 构建目标时可用。
创建 Visual Studio 解决方案
**警告:**在重新构建 Unity 项目之前,请务必保存并备份在 Visual Studio 中所做的任何更改。如果不备份更改,Unity 会在构建过程中重写这些更改。
- 转到文件 (File) > 构建设置 (Build Settings) > 目标平台 (Target Platform)。
- 选择 Windows 构建目标。
- 启用创建 Visual Studio 解决方案 (Create Visual Studio Solution) 构建设置。
- 选择构建 (Build) 以生成解决方案。

选择了构建 Visual Studio 解决方案 (Create Visual Studio Solution) 的构建设置面板
默认情况下,Unity 将生成的 Visual Studio 解决方案存储在与所构建项目相同的目录中。
脚本后端
Unity 生成的 Visual Studio 解决方案包含不同数量的项目,具体取决于 Unity 项目使用的脚本后端。对于 Mono 脚本后端,该解决方案包含三个项目。对于 IL2CPP 脚本后端,该解决方案包含四个项目。
注意:只能在 Windows 计算机上构建 Windows IL2CPP。
项目重定向向导
Unity 生成面向 Visual Studio 2015 的 Visual Studio 解决方案。如果使用较新版本的 Visual Studio,打开 Visual Studio 解决方案时,可能会出现重定向项目 (Retarget Projects) 对话框。
重定向项目对话框提示您升级 Visual Studio 解决方案以匹配已安装的 Visual Studio 版本。选择确定 (OK) 接受此建议。
解决方案内容
下面是 Unity 为 Visual Studio 解决方案生成的项目的列表。
项目 | 描述 |
|---|---|
| projectName (表示项目名称) | 这是您的主项目。Visual Studio 将此项目构建到最终的应用程序可执行文件中。您最有可能在其中进行更改。 |
| UnityData (存储在 projectName 项目内) | 此项目包含构建项目所需的所有 Unity 特定文件(如资源)。 |
| UnityPlayerStub | 这是适用于 |
| Il2CppOutputProject (仅限 IL2CPP 脚本后端) | 此项目包含: • 生成的 C++ 代码,这是 Unity 从托管程序集转换而来的。 • IL2CPP 运行时的源代码。 • IL2CPP 垃圾收集器。 您可以从 Visual Studio 内部调试此代码。 |
Visual Studio 中的构建配置选项
Visual Studio 提供多种构建配置选项。本节中的所有优化和调试参考仅指 Visual Studio 解决方案。要选择选项,请单击发布 (Release) 并从下拉选单中进行选择。
构建配置的类型
配置 | 用途 | 描述 |
|---|---|---|
| Debug | 调试 C++ 代码时使用 Debug 配置。 | • 禁用所有优化。 • 保留代码中的所有调试信息。 • 导致代码运行缓慢。 |
| Release | 使用 Release 配置来对游戏进行性能分析。 | • 启用代码优化。 |
| Master | 使用 Master 配置进行游戏提交和最终测试。 | • 禁用性能分析器。 • 构建时间与 Release 配置相同。 |
| MasterWithLTCG。仅在启用 IL2CPP 脚本后端时可用。 | 如果使用的是 IL2CPP 脚本后端,可以选择 Master 或 MasterWithLTCG 进行游戏提交和最终测试。 | • 为生成的 C++ 代码、IL2CPP 运行时和 IL2CPP 垃圾收集启用链接时间代码生成。 • 与 Master 配置相比,构建时间更长。 • 生成的应用程序执行速度更快。 |