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文件打进包里。

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

相关推荐
龚子亦16 小时前
【Unity开发】热更新学习——HybridCLR框架
学习·unity·游戏引擎·热更新
IMPYLH16 小时前
Lua 的 OS(操作系统) 模块
开发语言·笔记·后端·游戏引擎·lua
龚子亦18 小时前
【GameFramework框架】FSM使用
学习·unity·游戏开发·游戏框架
龚子亦19 小时前
【Unity开发】安卓应用开发中,用户进行权限请求
android·unity·安卓权限
君莫愁。20 小时前
【Unity】相机与UI的自适应
ui·unity·c#·游戏引擎
feiduoge1 天前
教程 44 - 相机系统
windows·游戏引擎·图形渲染
lrh30251 天前
Custom SRP - 16 Render Scale
3d·unity·srp·render pipeline·render scale
feiduoge2 天前
教程 43 - 渲染目标和可配置渲染通道
windows·游戏引擎·图形渲染
ellis19702 天前
Unity出安卓包知识点汇总
android·unity
DoomGT2 天前
Audio - UE5中的音效播放重启问题
游戏·ue5·游戏引擎·虚幻·虚幻引擎