Unity3D:构建设置

推荐:将NSDT场景编辑器加入你的3D工具链
3D工具集:NSDT简石数字孪生
构建设置
Unity 可以为不同的平台和不同的设置构建应用程序。本文档介绍如何定义构建的场景、目标平台和设置。
若要选择平台和设置,并开始生成过程,请使用“生成设置”窗口。要访问“构建设置”窗口:从 Unity 的主菜单中,转到“文件>构建设置”。
了解构建
Unity 生成两种构建类型:
- 发布版本,仅包含运行应用程序所需的内容。这是默认生成类型。
- 开发版本,其中包括脚本调试符号和探查器。选择开发生成选项将启用一组其他选项,例如深度分析支持和脚本调试。通用平台设置部分介绍了这些选项。
为了在开发过程中加快迭代速度,Unity 使用增量构建管道,仅当项目自上次构建以来发生更改时,才会重新构建项目。有关详细信息,请参阅增量生成管道。
管理构建中的场景
构建应用程序时,Unity 会在“构建中的场景”窗格中构建所有选定的场景。Unity 按照场景在列表中出现的顺序构建场景。
您可以在列表中添加、排除、删除和重新排序场景:
- 要将当前打开的所有场景添加到列表中:选择添加打开的场景。您也可以将场景从“项目”窗口拖到列表中。
- 要从构建中排除列表中的场景:清除该场景旁边的复选框。这会从构建中删除场景,但不会从列表中删除场景。
- 要从列表中删除场景:选择场景并按 Delete 键。
- 调整场景顺序:在列表中拖放场景以对其重新排序。

Platform 列表
每个生成都必须有一个目标平台。“平台”窗格列出了可以为其构建的所有平台。
计算机上安装的每个 Unity 版本都有自己的平台列表。
如果您需要的平台不在列表中,请执行下列操作之一:
在“生成设置”窗口中:
- 选择要添加的平台。
- 选择安装或下载。
在 Unity 中心>安装中:
- 选择您正在使用的 Unity 版本上的三个点。
- 选择“添加模块”。
- 按照说明安装平台模块。
要更改构建的目标平台,请执行以下操作:
- 选择要切换到的平台。
提示: 该列表在当前选择为目标平台的平台旁边显示 Unity 图标。 - 选择切换平台。
如果 Unity 需要以与目标平台匹配的格式重新导入资源,切换过程可能需要很长时间。
生成设置
选择平台时,Unity 会显示一个选项列表,您可以针对构建进行调整。有些设置适用于所有平台,有些设置是特定于平台的。
通用平台设置
以下设置适用于所有平台。
设置: | 功能: | |
---|---|---|
开发构建 | 在生成中包含脚本调试符号和探查器。当您想要测试应用程序时,应使用此设置。 选择此选项时,Unity 将设置脚本定义DEVELOPMENT_BUILD。然后,生成将包含设置为条件的预处理器指令(请参阅依赖于平台的编译)。 DEVELOPMENT_BUILD | |
自动连接探查器 | 自动将 Unity 性能分析器连接到您的构建。 仅当选择了“开发版本”时,此选项才可用。 | |
深度分析支持 | 在探查器中打开深度性能分析。这使得探查器检测应用程序中的每个函数调用,以便返回更详细的分析数据。此选项可能会减慢脚本执行速度。 仅当选择了“开发版本”时,此选项才可用。 | |
脚本调试 | 允许调试脚本代码。 仅当选择了“开发版本”时,此选项才可用。 此选项不适用于 WebGL。 | |
等待托管调试器 | 使播放机在执行任何脚本代码之前等待附加调试器。 仅当选择了“脚本调试”时,此选项才可用。 | |
IL2CPP 代码生成 | 定义 Unity 如何管理 IL2CPP 代码生成。 仅当您将 IL2CPP 用于脚本后端而不是 Mono 时,此选项才可用。 要更改脚本后端,请转到“播放器设置”>“配置”>“脚本后端”,然后从单声道更改为 IL2CPP。 | |
运行速度更快 | 生成针对运行时性能进行优化的代码。这是默认设置,也是以前版本的 Unity 中的行为。 | |
更快(更小)的构建 | 生成针对生成大小和迭代进行优化的代码。它生成的代码较少,生成较小的版本,但可能会影响运行时性能,尤其是对于泛型代码。当更快的生成时间很重要时(例如在迭代更改时),您可能希望使用此选项。 | |
压缩方式 | 在生成播放器时压缩项目中的数据。这包括资产、场景、玩家设置和 GI 数据。 此选项不适用于 Lumin 和 WebGL 平台。 | |
违约 | 在PC,Mac,Linux Standalone和iOS上,没有默认压缩。 在Android上,默认压缩是ZIP,它提供的压缩结果比LZ4HC稍好。但是,ZIP 数据的解压缩速度较慢。 | |
LZ4 | 一种对开发版本有用的快速压缩格式。有关更多信息,请参阅 BuildOptions.CompressWithLz4。 | |
LZ4HC | LZ4 的一种高压缩变体,构建速度较慢,但发布版本会产生更好的结果。有关更多信息,请参阅 BuildOptions.CompressWithLz4HC。 |
资源导入覆盖
要加快导入和平台切换时间,您可以在本地覆盖所有纹理导入设置。通常,您不会在发布带有任何导入覆盖的最终构建时,但在开发过程中,它们对于加快迭代时间很有用,特别是如果您不关心资产(在本例中为纹理)看起来尽可能好。
要为初始项目导入设置资源导入覆盖,请使用编辑器命令行参数和 。-overrideMaxTextureSize-overrideTextureCompression
这两个替代选项的默认值均为“无覆盖”。
设置: | 功能: | |
---|---|---|
最大纹理大小 | 覆盖最大导入纹理大小。Unity 导入两个值中较低值的纹理:此值或在纹理导入设置中指定的“最大大小”值。 导入纹理所需的时间大致与其包含的像素数成正比,因此允许的最大纹理大小越小可以加快导入时间。但是,生成的纹理分辨率较低,因此仅在开发期间使用此设置。 | |
纹理压缩 | 覆盖在纹理导入设置中设置的纹理压缩选项。 仅影响导入到其中一种压缩纹理格式的纹理。 | |
强制快速压缩机 | 对支持它的格式(BC7、BC6H、ASTC 等、ETC2)使用更快但质量较低的纹理压缩模式。通常这会导致更多的压缩伪影,但对于许多格式,压缩本身的速度要快 2 到 20 倍。 此设置还会在具有它的任何纹理上禁用 Crunch 纹理压缩格式。 此设置的效果与所有纹理在其平台的纹理导入设置中将其压缩器质量设置为快速设置的效果相同。 | |
强制未压缩 | 不要压缩纹理;请改用未压缩的格式。导入速度更快(因为它跳过了纹理压缩过程),但生成的纹理会占用更多内存和游戏数据大小,并且可能会影响渲染性能。 此设置的效果与所有纹理在其平台的纹理导入设置中的压缩设置为“无”相同。 |
特定于平台的设置
每个平台还具有特定的构建设置:
- PC、Mac 和 Linux 独立版:请参阅 PC、Mac 和 Linux 内部版本设置。
- 通用 Windows 平台:请参阅通用 Windows 平台生成设置。
- tvOS:请参阅为 tvOS 构建应用程序。
- iOS:请参阅 iOS 构建设置。
- Lumin:参见合作伙伴 - Magic Leap。Unity 2020 LTS 是支持 Magic Leap 1 的编辑器的最终版本。要为 Magic Leap 1 构建,请使用 Unity 2020 LTS 或 2019 LTS。
- 安卓:请参阅 Android 构建设置。
- WebGL:请参阅构建和运行 WebGL 项目。
- 有关封闭式平台开发的构建设置,请参阅 Unity 安装程序中包含的文档,或查阅 Unity 论坛。
构建您的应用程序
若要生成应用程序,请选择以下选项之一:
- 构建:编译播放器,然后什么都不做。默认生成是增量的,但第一个生成除外,它始终是完全非增量(干净)生成。若要强制使用干净生成而不是增量生成,请从下拉菜单中选择“干净生成”。

- 生成并运行:编译播放器并在目标平台上打开它(有关详细信息,请参阅各个平台页面)。此选项始终使用增量生成。
此文由3D建模学习工作室整理翻译,转载请注明出处!