Unity3D:增量生成管道
推荐:将NSDT场景编辑器加入你的3D工具链
3D工具集:NSDT简石数字孪生
增量生成管道
为了在开发过程中加快迭代速度,Unity 使用增量构建管道,该管道仅在自上次构建以来更改了部分应用程序时才重新构建。这包括资产序列化、代码编译、数据压缩和签名等生成步骤。默认情况下,Unity 对发布和开发版本都使用增量构建管道。
增量生成管道还自动执行“仅脚本生成”功能。因此,“仅脚本生成”仅在“生成设置”窗口中对不使用增量生成的平台可用。
增量生成管道适用于 Mono 和 IL2CPP 脚本后端。虽然,输出文件结构会根据项目使用的脚本后端而变化。
平台兼容性
Unity 支持以下平台的增量构建管道:
- 独立(Windows、Mac 和 Linux)
- WebGL
- 人造人
创建非增量构建
在某些情况下,创建不使用增量生成管道的生成可能很有用或必要。
要创建干净的非增量生成,请执行以下操作:
- 打开“生成设置”窗口。
- 在“生成”按钮旁边,选择下拉列表。
- 选择“干净生成”。
通常,如果在增量生成后不存在预期的更改,并且你认为增量生成管道存在问题,请创建一个干净的生成。最常见的原因是当您实现或更改影响资产的生成流程回调时。
由于构建过程无法知道您实现的回调如何影响资产,因此无法确定如何重新构建资产。Unity 仅在文件的依赖项发生更改时重新生成文件。这意味着,如果回调修改了 Unity 生成的文件,并且文件的依赖项未更改,则回调可以对已修改的文件应用修改。例如,如果回调将新条目添加到 Android 应用清单,并且 Android 应用清单的依赖项未更改,则回调仍会添加新条目,从而导致文件无效。
对于开发版本,如果您更改了回调或其输入数据,并且希望 Unity 重新构建回调影响的资源,请创建一个干净的构建。对于发布版本,Unity 会重新构建所有资源,因此您无需创建干净的版本。回调的示例包括:如果您更改了回调或其输入数据,并且希望 Unity 重新构建回调影响的资源,请创建一个干净的构建。回调的示例包括:
- 后期处理场景属性
- IPreprocessShaders.OnProcessShader
- IPreprocessComputeShaders.OnProcessComputeShader
注:如果对资源进行更改,Unity 会在构建应用程序时重新构建该资源。这还包括处理任何影响它的回调,这意味着在对资产进行更改时不需要创建干净构建,只需对构建过程回调进行更改。
此文由3D建模学习工作室整理翻译,转载请注明出处!