使用预下载功能
Unity导出的Webgl游戏主要是以WebAssembly文件为主,该文件可以实现C#写的代码文件可以运行在浏览器环境,JS引擎在编译该类文件及加载相应的资源时处于项目的编译期,并未进入到真正运行游戏阶段,此时可以利用网络空闲状态提前去下载游戏中用到的动态资源,比如AssetBundle\Addressable\配置文件等,当游戏使用该资源时直接本地加载,无需再次网络IO操作,从而提高游戏的流畅度。
使用介绍
预下载地址可以通过插件或者手动配置,插件目前只支持5个并发,建议资源包尽量小(3~5M),业务无感知,无需修改任何代码。
插件方式
打包成功后会在env.conf文件中生成preloadUrl字段,格式如下:
json
{
"wasmUrl": "http://1x.x.48.109:8080/wasm.zip",
"streamingAssetsUrl": "",
"preloadUrl": "http://172.27.49.93:8080/1.txt;http://172.27.49.93:8080/2.txt;http://172.27.49.93:8080/3.txt;http://172.27.49.93:8080/4.txt;http://172.27.49.93:8080/5.txt;",
"subUnityPkg": false
}
所有的资源地址会拼接成一个字符串,中间用;分割开。
手动配置
通过插件只支持5个并发,如果资源较多,可以手动修改该配置文件的preloadUrl字段,按照上述规则拼接资源地址,建议不要超过10个,以免造成启动卡顿。