生成设置
Unity可以为不同的平台和不同的设置构建应用程序。本文档描述了如何定义构建的场景、目标平台和设置。
要选择平台和设置并启动生成过程,请使用生成设置窗口。要访问生成设置窗口:从Unity的主菜单,转到文件>生成设置.
了解生成
Unity生成两种构建类型:
- 一个释放构建,它只包含运行应用程序所需的内容。这是默认的生成类型。
- 一个发展构建,其中包括脚本调试符号和探查器帮助您优化游戏的窗口。它显示了在游戏的各个方面花费了多少时间。例如,它可以报告渲染、动画或在游戏逻辑中花费的时间百分比。更多信息
请参阅中的词汇表。选择开发构建选项将启用一组附加选项,例如深度分析支持和脚本调试。这些选项在通用平台设置第节。
为了在开发过程中更快地迭代,Unity使用增量生成管道只有在工件自上次构建以来发生更改时,才会重新构建工件。有关更多信息,请参阅增量生成管道.
管理生成中的场景
构建应用程序时,Unity将在内部场景窗格。Unity按照场景在列表中的显示顺序构建场景。
您可以在列表中添加、排除、移除和重新排序场景:
-
将所有当前打开的场景添加到列表中:选择添加打开的场景。您还可以从项目窗口添加到列表中。
-
从构建中排除列表中的场景:清除该场景旁边的复选框。这将从构建中移除场景,但不会从列表中移除。
-
从列表中删除场景:选择场景并按删除.
-
调整场景顺序:在列表中拖放场景以重新排序。
平台列表
每个构建都必须有一个目标平台。“平台”窗格列出了可以为其构建的所有平台。
安装在计算机上的每个Unity版本都有自己的平台列表。
如果您需要的平台不在列表中,请执行以下操作之一:
-
在生成设置窗口:
- 选择要添加的平台。
- 选择安装或下载.
-
在联合中心>安装:
- 选择您正在使用的Unity版本上的三个点。
- 选择添加模块.
- 按照说明安装平台模块。
要更改生成的目标平台,请执行以下操作:
- 选择要切换到的平台。
提示:列表显示当前选定为目标平台的平台旁边的Unity图标。
- 选择交换机平台.
如果Unity需要以与目标平台匹配的格式重新导入您的资产,则切换过程可能需要很长时间。
生成设置
当您选择平台时,Unity会显示一个选项列表,您可以针对构建进行调整。有些设置适用于所有平台,有些是特定于平台的。
通用平台设置
以下设置适用于所有平台。
设置: |
功能: |
开发-构建开发版本包含调试符号并启用探查器。更多信息 请参阅中的词汇表 |
在构建中包含脚本调试符号和探查器。当您想要测试应用程序时,应该使用此设置。 选择此选项时,Unity将设置DEVELOPMENT_BUILD脚本定义。然后,您的构建包含预处理器指令,用于设置发展_建筑 作为条件(参见与平台相关的编译). |
自动连接探查器 |
自动将Unity Profiler连接到您的构建。
此选项仅在您选择开发-构建. |
深仿形支架 |
打开深度剖析在探查器中。这使得分析器可以检测应用程序中的每个函数调用,从而返回更详细的分析数据。此选项可能会降低脚本执行速度。
此选项仅在您选择开发-构建. |
脚本调试 |
允许调试脚本代码。
仅当您选择了“开发构建”时,此选项才可用。 此选项不适用于WebGL。 |
等待托管调试器 |
让播放器在执行任何脚本代码之前等待附加调试器。
此选项仅在您选择脚本调试. |
IL2CPP代码生成 |
定义Unity如何管理IL2CPP代码生成。 只有在脚本后端使用IL2CPP而不是Mono时,此选项才可用。 要更改脚本后端,请转到播放器设置>配置>编写后端脚本和更改自单声道到IL2CPP公司. |
|
更快的运行时间 |
生成针对运行时性能进行优化的代码。这是Unity以前版本中的默认行为。 |
|
更快(更小)的构建 |
生成针对生成大小和迭代进行优化的代码。它生成的代码更少,生成的构建也更小,但可能会影响运行时性能,尤其是通用代码。当更快的构建时间很重要时,例如迭代更改时,您可能希望使用此选项。 |
压缩方法 |
构建播放器时,压缩项目中的数据。这包括资产可以在游戏或项目中使用的任何媒体或数据。资源可能来自在Unity外部创建的文件,例如3D模型、音频文件或图像。您还可以在Unity中创建一些资源类型,例如Animator Controller、Audio Mixer或Render Texture。更多信息 请参阅中的词汇表,场景场景包含游戏的环境和菜单。将每个独特的场景文件视为一个独特的级别。在每一个场景中,你都会放置你的环境、障碍物和装饰品,基本上是设计和构建你的游戏。更多信息 请参阅中的词汇表,播放器设置可以为Unity构建的最终游戏设置各种特定于玩家的选项的设置。更多信息 请参阅中的词汇表、和GI数据.
此选项不适用于WebGL平台。 |
|
违约 |
在PC、Mac、Linux Standalone和iOS上,没有默认压缩。
在Android上,默认的压缩是ZIP,它的压缩效果比LZ4HC稍好。然而,ZIP数据的解压缩速度较慢。 |
|
LZ4型 |
A禁食压缩一种存储数据的方法,可以减少所需的存储空间。请参见纹理压缩,动画压缩,音频压缩,生成压缩. 请参阅中的词汇表对开发构建有用的格式。有关更多信息,请参阅构建选项。用Lz4压缩. |
|
LZ4HC型 |
LZ4的一个高压缩变体,构建速度较慢,但为发布版本产生更好的结果。有关更多信息,请参阅构建选项。压缩Lz4HC. |
资产导入覆盖
要加快导入和平台切换时间,可以本地覆盖所有纹理导入设置。通常,您不会在最终构建中附带任何导入覆盖,但在开发过程中,它们对于加快迭代时间非常有用,尤其是当您不关心看起来尽可能好的资产(在本例中为纹理)时。
要为初始项目导入设置资产导入覆盖,请使用编辑器命令行参数 -覆盖MaxTextureSize
和-overrideTextureCompression(覆盖文本压缩)
.
两个覆盖选项的默认值均为无覆盖.
设置: |
功能: |
最大纹理尺寸 |
覆盖导入的最大纹理大小。Unity以两个值中较低的值导入纹理:该值或中指定的“最大大小”值纹理导入设置.
导入纹理所需的时间大致与它包含的像素数成正比,因此允许的最大纹理大小越小,导入时间越快。但是,生成的纹理分辨率较低,因此仅在开发期间使用此设置。 |
纹理压缩3D图形硬件要求以专门的格式压缩纹理,这些格式针对快速纹理采样进行了优化。更多信息 请参阅中的词汇表 |
覆盖中设置的纹理压缩选项纹理导入设置.
仅影响导入到其中一个压缩纹理格式. |
|
强制快速压缩机 |
对支持它的格式(BC7、BC6H、ASTC、ETC、ETC2)使用速度更快但质量更低的纹理压缩模式。通常这会导致更多的压缩伪影,但对于许多格式,压缩本身要快2到20倍。
此设置还禁用嚼任何纹理上的纹理压缩格式。
此设置的效果与所有纹理都具有压缩机质量设置为快速设置在他们的平台上纹理导入设置. |
|
强制未压缩 |
不要压缩纹理;请改用未压缩的格式。这导入速度更快(因为它跳过了纹理压缩过程),但生成的纹理会占用更多的内存和游戏数据大小,并可能影响渲染性能。
此设置的效果与所有纹理都具有压缩设置为无在他们的平台上纹理导入设置. |
平台特定设置
每个平台还具有特定的构建设置:
-
PC、Mac和Linux单机版:请参阅个人计算机,雨衣、和Linux构建设置.
-
通用Windows平台IAP功能支持Microsoft的应用内购买模拟器,允许您在发布应用程序之前在设备上测试IAP购买流。更多信息
请参阅中的词汇表:请参阅通用Windows平台生成设置.
-
电视操作系统:请参阅为tvOS构建应用程序.
-
网间网操作系统:请参阅iOS构建设置.
-
安卓:请参阅Android构建设置.
-
网络GL在web浏览器中呈现2D和3D图形的JavaScript API。Unity WebGL构建选项允许Unity将内容发布为JavaScript程序,JavaScript程序使用HTML5技术和WebGL渲染API在web浏览器中运行Unity内容。更多信息
请参阅中的词汇表:请参阅构建和运行WebGL项目.
- 对于的生成设置封闭式平台包括需要与平台提供商就使用其开发工具和硬件达成保密和法律协议的平台。除非您与提供商建立了关系,否则这些平台不会向开发人员开放。例如PlayStation®、Xbox®游戏核心和任天堂®。
请参阅中的词汇表开发,请参阅Unity安装程序中包含的文档,或咨询Unity论坛。
构建应用程序
要构建应用程序,请选择以下选项之一:
-
生成:编译播放器,然后不执行任何操作。默认构建是增量的,但第一个构建除外,它始终是完整的非增量(干净)构建。要强制干净的构建选择,而不是增量构建清除内部版本从下拉菜单中选择。
-
构建并运行:编译播放器并在目标平台上打开它(有关更多信息,请参阅各个平台页面)。此选项始终使用增量构建。