Unity开发微信小游戏-减少WASM包体大小

减少wasm包体等于减少下载首包时间+减少编译时间+减少进入游戏使用的内容。

也属于性能优化的一部分。下面是2个优化的大头,解决后会极大减少wasm包体大小。

一、设置代码剪裁等级为高

在打包后运行后可能会报错,缺少模块数字XX。

解决办法:

1.首包持有

在首包中的物体上强引用模块,比如缺少Animator,就在首包的一个空物体上放一个Animator、Animation等等。

2. link.xml

link.xml放在项目任意位置。

其中配置一定要保留那些模块,可以是unity模块,可以是自己的代码命名空间、类、方法、字段等。

3. [Preserve]

被标志的类不会被代码剪裁。

UnityEngine.Scripting.Preserve

public class MyImportantClass {

// 类内容

}

二、中文字体

一个中文字体通常在几mb大小,如果只将首包或全包中用到的文字单独生成一个字符集,就不需要三千或五千字的全字符集了。

一、字符收集

通常字符都是配置在excel或者Scriptobject,可以写个脚本扫描这些配置里面的字段。

当然也可以将所有用到的字符串维护在一个配置里,去重得到结果。

二、制作TMP字符集

使用TMP的FontAssetCreater即可,

但是注意,打包时候要把ttf字体文件移除,目前不清楚为什么会把ttf文件打进包里。

三、根据项目情况选择合适的字符集图集大小

相关推荐
神码编程1 小时前
【Unity】MiniGame编辑器小游戏(十六)中国象棋局域网对战【Chinese Chess】(下)
unity·编辑器·游戏引擎·小游戏
Maddie_Mo2 小时前
Unity 联动 Trae AI 项目开发基础教学
人工智能·unity·游戏引擎
新手unity自用笔记14 小时前
unity简单新手上手动画系统讲解
unity·游戏引擎
伽蓝_游戏15 小时前
第二章:深入 Unity 资源导入管线 (Asset Import Pipeline)
游戏·unity·c#·游戏引擎·游戏程序
我寄人间雪满头丶20 小时前
Unity中对于数值游戏的大数显示
游戏·unity·游戏引擎
游乐码21 小时前
unity基础 (三)坐标系
unity·游戏引擎
qq_2052790521 小时前
Unity 避免Text组件每行开头不是字符和空格,适配不同分辨率
unity·游戏引擎
游乐码21 小时前
Unity基础(二)游戏中的角度及三角函数
游戏·unity·游戏引擎
真鬼1231 天前
Cesium、Cmake、Dotnet快捷下载
unity·游戏引擎
真鬼1231 天前
【Unity安卓】Unity 嵌入 Android Studio 完整流程
android·unity·android studio