UE5 优化项目包体大小

打包前

打包前,content内容243MB,由模型、贴图、蓝图资源构成,(使用工具TreeSize)

打包后

third person模板打包后,整个目录的大小及构成如下,

项目目录

TPProject大小328.3MB,

TPProject/Content/Paks/TPProject-Windows.pak(242MB),大小与打包前content大小一致。

/TPProject/Binaries/Win64/TPProject-Win64-Shipping.exe(85.8MB),

分析TPProject-Win64-Shipping.exe(使用工具ghidra),主要是项目代码和资源引用

引擎目录

Engine大小52.8MB,整体结构如下图,有三个目录Extract、Binaries、Content

Extract目录

其中\Extras\Redist\en-us\UEPrereqSetup_x64.exe大小为48.1MB,占Extract目录空间大小100%

UEPrereqSetup_x64.exe作用是在首次运行程序时,会自动检测并安装必要的系统组件,保证程序正常运行。

Binaries组成

Binaries下是ThirdParty,包含必要的库,如下图。

优化参考

https://cobracode.notion.site/How-to-reduce-Package-Size-for-Unreal-Engine-Game-Builds-7993544e050041f9800512acd3500cfc

修改如下配置后,打包,整个目录的大小由384.7MB减小到358MB。主要是pak文件从242MB减小到216 MB。

  1. 勾选Packaging->UsePakFile

  2. 勾选Packaging->Create compressed cooked packages

  3. 勾选Packaging->Exclude editor content when cooking

  4. 勾选Packaging->Full Rebuild

  5. 勾选Packaging->ListsOfMaps,添加需要构建的地图文件

  6. 勾选Rendering->Forward Shading

添加DefaultPakFileRules.ini配置后打包,参考https://cobracode.notion.site/How-to-reduce-Package-Size-for-Unreal-Engine-Game-Builds-7993544e050041f9800512acd3500cfc,包体整个目录再由358MB减小到356MB.

 

[ExcludeDefault] Targets="Shipping,Development,Debug" bExcludeFromPaks=true bOverrideChunkManifest=true +Files=".../Engine/Content/ArtTools/*" +Files=".../Engine/Content/EditorLandscapeResources/*" +Files=".../Engine/Content/EditorMeshes/ColorCalibrator/*" +Files=".../Engine/Content/EngineSounds/*" +Files=".../Engine/Content/Maps/*" +Files=".../Engine/Content/MobileResources/*" +Files=".../Engine/Content/Slate/Automation/*" +Files=".../Engine/Content/Slate/Common/*" +Files=".../Engine/Content/Slate/CrashTracker/*" +Files=".../Engine/Content/Slate/Docking/*" +Files=".../Engine/Content/Slate/Fonts/DroidSansFallback.ttf" +Files=".../Engine/Content/Slate/Icons/*" +Files=".../Engine/Content/Slate/MessageLog/*" +Files=".../Engine/Content/Slate/Old/*" +Files=".../Engine/Content/Slate/Testing/*" +Files=".../Engine/Content/Slate/Tutorials/*" +Files=".../Engine/Content/Tutorial/*" +Files=".../Engine/Content/VREditor/*" +Files=".../Engine/Content/EditorMeshes/Camera/SM_CraneRig_Arm.*" +Files=".../Engine/Content/EditorMeshes/Camera/SM_CraneRig_Base.*" +Files=".../Engine/Content/EditorMeshes/Camera/SM_CraneRig_Body.*" +Files=".../Engine/Content/EditorMeshes/Camera/SM_CraneRig_Mount.*" +Files=".../Engine/Content/EditorMeshes/Camera/SM_RailRig_Mount.*" +Files=".../Engine/Content/EditorMeshes/Camera/SM_RailRig_Track.*" +Files=".../Engine/Content/EditorMaterials/MAT_Groups_Toggle.*" +Files=".../Engine/Content/EditorMaterials/MAT_Groups_Visibility.*" +Files=".../Engine/Content/EditorMaterials/PreviewShadowIndicator.*" +Files=".../Engine/Content/EditorMaterials/PreviewShadowIndicatorMaterial.*" +Files=".../Engine/Content/EditorMaterials/MatineeGroups/MAT_ColorTrack.*" +Files=".../Engine/Content/EditorMaterials/MatineeGroups/MAT_Groups_Anim.*" +Files=".../Engine/Content/EditorMaterials/MatineeGroups/MAT_Groups_AudioMaster.*" +Files=".../Engine/Content/EditorMaterials/MatineeGroups/MAT_Groups_Director.*" +Files=".../Engine/Content/EditorMaterials/MatineeGroups/MAT_Groups_Event.*" +Files=".../Engine/Content/EditorMaterials/MatineeGroups/MAT_Groups_Fade.*" +Files=".../Engine/Content/EditorMaterials/MatineeGroups/MAT_Groups_Float.*" +Files=".../Engine/Content/EditorMaterials/MatineeGroups/MAT_Groups_Move.*" +Files=".../Engine/Content/EditorMaterials/MatineeGroups/MAT_Groups_Slomo.*" +Files=".../Engine/Content/EditorMaterials/MatineeGroups/MAT_Groups_Sound.*" +Files=".../Engine/Content/EditorMaterials/MatineeGroups/MAT_Groups_Vector.*" +Files=".../Engine/Content/EditorMaterials/ParticleSystems/PSysThumbnail_NoImage.*" +Files=".../Engine/Content/EditorMaterials/ParticleSystems/PSysThumbnail_OOD.*" +Files=".../Engine/Content/EditorMaterials/Camera/CineMat.*" +Files=".../Engine/Content/EditorMaterials/Camera/MI_CineMat_Rig.*"

优化总结

无风险设置
  1. 取消勾选Packaging->Includeprequisites installer(上架steam适用)

  2. 关闭不必要的插件(视项目情况)

  3. 勾选Packaging->UsePakFile

  4. 勾选Packaging->Share Material Shader Code

  5. 勾选Packaging->Create compressed cooked packages

  6. 勾选Packaging->Exclude editor content when cooking

  7. 勾选Packaging->Full Rebuild

  8. 勾选Packaging->ListsOfMaps,添加需要构建的地图文件

  9. 勾选Rendering->Forward Shading

进一步优化
  1. 禁用引擎所默认开启的插件,同时需要保证项目功能正常

  2. 添加DefaultPakFileRules.ini,参考(https://forums.unrealengine.com/t/pak-blacklist-file-deprecated-in-favor-of-defaultpakfilerules-ini/153080/5)

参考:https://cobracode.notion.site/How-to-reduce-Package-Size-for-Unreal-Engine-Game-Builds-7993544e050041f9800512acd3500cfc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值