加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

unity3d – 如何从构建中排除不必要的DLL?

发布时间:2020-12-14 01:35:43 所属栏目:Windows 来源:网络整理
导读:我正在尝试优化我的游戏文件大小,特别是 android版本.我已经优化了资产并将构建剥离级别设置为使用micro mscorlib.但是,查看Editor.log显示DLL仍然占用超过50%: Textures 2.7 mb 35.7% Meshes 80.5 kb 1.0% Animations 0.0 kb 0.0% Sounds 0.8 kb 0.0% Sha
我正在尝试优化我的游戏文件大小,特别是 android版本.我已经优化了资产并将构建剥离级别设置为使用micro mscorlib.但是,查看Editor.log显示DLL仍然占用超过50%:

Textures      2.7 mb     35.7% 
 Meshes        80.5 kb     1.0% 
 Animations    0.0 kb     0.0% 
 Sounds        0.8 kb     0.0% 
 Shaders       98.2 kb     1.3% 
 Other Assets  177.9 kb     2.3% 
 Levels        110.0 kb     1.4% 
 Scripts       447.4 kb     5.8% 
 Included DLLs 3.9 mb     52.2% 
 File headers  26.2 kb     0.3% 
 Complete size 7.5 mb     100.0%

3.9mb似乎有点多,所以我看看实际添加了哪些DLL.我找到了这个:

Mono dependencies included in the build
 Dependency assembly - Mono.Security.dll
 Dependency assembly - System.Core.dll
 Dependency assembly - System.dll
 Dependency assembly - mscorlib.dll
 Dependency assembly - UnityEngine.UI.dll
 Dependency assembly - UnityEngine.Networking.dll
 Dependency assembly - UnityEngine.Analytics.dll
 Dependency assembly - Assembly-CSharp.dll
 Dependency assembly - Assembly-UnityScript-firstpass.dll
 Dependency assembly - Assembly-UnityScript.dll

看起来它可以改进很多.我不使用UnitScript,因此Assembly-UnityScript-firstpass.dll和Assembly-UnityScript.dll应该已经过时.我也不使用网络或分析,因此也可以删除它们.不确定Mono.Security.dll的作用或UnityEngine.UI.dll是否真的有必要.
所以,知道这一点,我怎样才能摆脱这些看似不必要的DLL?

解决方法

似乎没有直接的方法来做到这一点.我刚刚尝试删除测试项目中的一些dll引用,但这还不够. Unity无论如何都在构建中包含了一些已删除的库.

但是,如果我们不可能团结一致来找到那些元素呢?这种方法奏效了.

脚步:

>删除Assembly-CSharp和Assembly-CSharp-firstpass中的引用

Edit references in project

References list


>按照路径并将删除的dll重命名为其他内容,例如filename.dd_old:

Follow the path of those dlls

Rename those dlls

3.-编译,构建并查看结果:)

之前:

Mono dependencies included in the build
Dependency assembly .....
Dependency assembly - UnityEngine.UI.dll
Dependency assembly - UnityEngine.Networking.dll
Dependency assembly - UnityEngine.SpatialTracking.dll
Dependency assembly .....

后:

Mono dependencies included in the build
Dependency assembly .....
Dependency assembly - UnityEngine.UI.dll
Dependency assembly - UnityEngine.SpatialTracking.dll
Dependency assembly .....

>测试你的游戏,我真的不知道这种做法有什么不对,我的意思是,我真的不知道这种做法不会出错:D>将_old文件重命名为下一个项目的原始名称等.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读