iOS已打包游戏大小

影响iOS已打包游戏大小的因素。

Windows
MacOS
Linux

影响iOS已打包游戏的因素众多,从游戏引用的内容到所选的版本配置,都会产生影响。

目标配置

最大变化之一是以发布配置为目标,而非开发,从而节省了约31MB。发布配置使用较高优化配置,同时删除调试符号及大量日志和描述代码,从而减小可执行文件的大小。

游戏内容引用

理解的重点是将烘焙游戏中引用的内容;常见问题有:在材质函数或材质中引用大量未用纹理作为默认纹理样本,或在断开连接的节点中引用未用内容,亦或在蓝图中引用未用变量。即使所有材质实例将上述内容替换为其他内容,此类这些内容仍然被视为已引用。可在已烘焙资源文件夹中进行查看,如找到意料外的资源,则使用引用查看器追踪其引用者。

如通过工具栏上的启动按钮进行烘焙,仅会烘焙所选地图引用的内容;但若打包项目,则将烘焙游戏中的所有内容,甚至是未引用内容。

禁用Slate

纯内容项目无法对使用中的插件和库进行假定,因此其的可执行文件较大。切换到C++并在编译时禁用无用插件和库,通常可稍微压缩可执行文件的大小(通过 EnabledPluginsProject.Build.csProject.Target.cs 文件)。纯内容游戏无法使用Slate,因此最优化的方式是在纯内容游戏中移除30MB以上的Slate资源。如创建的C++项目不使用Slate,则在 Project.Target.csTargetRules 类的构造函数内设置 bUsesSlate = false,即可节省这部分空间。

Obj List

可使用 Obj List 命令来更好了解项目中消耗内存最多的资源类型。在UE4控制台中输入Obj List命令后,其将返回与下图类似的列表。

点击查看大图。

然后可使用该列表来判断内存使用最多的项目,并根据需要进行优化。 

低级内存跟踪器

低级内存跟踪器(Low-Level Memory Tracker)简称LLM,其是一种追踪虚幻引擎项目中内存使用情况的工具。LLM使用范围标记系统来记录虚幻引擎和操作系统分配的所有内存。可使用LLM来帮助确定内存的占用情况。欲了解使用LLM的更多相关信息,请查看以下文档,其中将介绍在UE4项目中使用LLM的方法。

欢迎来到全新虚幻引擎4文档站!

我们正在努力开发新功能,包括反馈系统,以便您能对我们的工作作出评价。但它目前还未正式上线。如果您对此页面有任何意见与在使用中遭遇任何问题,请前往文档反馈论坛告知我们。

新系统上线运行后,我们会及时通知您的。

发表反馈意见