一直以来,微信小游戏都在不断寻求更优的小游戏使用体验,从微信7.0.7版本开始,就一直在灰度测试的微信小游戏通用引擎插件,今日已全量放开。
该插件内置了主流的通用游戏引擎,其中包括近一年以来的LayaAir 1.0系列与LayaAir2.0系列的正式版。
开发者使用了微信小游戏的引擎插件后,当玩家曾体验的任何一款游戏中包括了该插件的相同版本引擎,都无需再次加载,直接调用已加载的微信公共插件库中的引擎版本。
与从本地包加载引擎的模式相比,引擎插件模式无疑会增强用户玩游戏时的加载体验。未来,随着微信7.0.7及以后版本的普及,或许可以只使用引擎插件,不再使用本地包中的引擎库。
下面我们就针对引擎插件的使用,进行详细说明。
1、下载支持引擎插件发布的LayaAir IDE
LayaAir 1.x IDE从1.8.6beta版本开始支持引擎插件的适配发布,LayaAir 2.x IDE从2.4.0beta版本开始支持引擎插件的适配发布,所以必须要下载支持引擎插件的IDE。
LayaAir1.x IDE 下载地址为:
https://ldc.layabox.com/layadownload/?type=layaairide
LayaAir2.x IDE 下载地址为:
https://ldc2.layabox.com/layadownload/?type=layaairide
2、以前IDE创建的项目需要适配吗?
假如你刚刚下载完已支持引擎插件的LayaAirIDE,TS和JS语言的项目哪怕打开的是以前版本IDE创建的项目,也不需要做任何人工修改,在编译并发布时,IDE会自动进行适配。
AS项目则需要人工更改一下编译参数,以使得项目在编译时,引擎与项目代码分离。
如果你的AS项目是2.2.0 IDE版本之前创建的,需要打开.laya/compile.js
,搜一下asconfig.json;
在其后增加配置参数outlaya=true;
如下图所示。
如果你的AS项目是LayaAirIDE1.8.6 IDE版本之前创建的,打开.laya/tasks.json
,找到 "args"
字段,在该字段的配置参数后增加新的配置参数outlaya=true
,如下图所示。
修改后别忘了要先编译一下项目,TS实验版尽管IDE自动完成了适配,也需要先编译一下。
3、IDE发布时的配置选项
发布的时候,在微信小游戏发布的功能选项下,勾选是否使用引擎插件
的功能模块选项,如下图所示。
勾选后,发布的微信小游戏版本,会自动配置好引擎插件的相关配置。然后和普通发布小游戏的流程一样就可以了。
4、了解一下IDE生成的引擎插件目录与配置
引擎插件的适配,IDE其实自动做好了,不需要开发者做什么,不过大家可以了解一下LayaAir IDE做了哪些事。
4.1 自动生成了引擎插件的本地目录
我们会发现,发布后的微信小游戏目录与没用引擎插件的目录相比,多了一个laya-libs
目录。如下图所示。
这个多出来的laya-libs
目录就是引擎插件本地版目录,这个目录的作用是为了兼容微信7.0.7以下版本用的。如果玩家的微信是低版本,则自动使用本地包引擎插件目录laya-libs
下的引擎插件,如果是微信7.0.7及以上版本。这个目录则不会使用。
4.2 修改了 game.json
除了多创建了一个laya-libs
,IDE还修改了game.json。插件的使用全靠这里。如下图所示。
我们可以看到game.json里多了plugins(插件)配置。
version 字段的内容是版本号,字段必须保留
provider 字段是引擎插件提供者appId,千万不要动这里。
path 字段是引擎插件的本地目录,如果不考虑兼容7.0.7以下用户和不需要使用本地版插件进行调试,可以删除本字段。
如果大家要想使用引擎插件,plugins这里的信息大家最好不要手工改,发布时IDE会自动生成,改了之后,会影响大家对于引擎插件的使用。
5、微信开发者工具中的配置
5.1 调试基础库版本
微信开发者工具,点开详情,本地设置,调试基础库至少要2.9.0及以上版本才可以在微信开发者工具中使用引擎插件。
5.2 什么时候使用本地插件
本地设置里有一个选项 使用本地的插件
,一般情况下不用勾选。如下图所示。
不勾选的时候,默认会采用引擎方提供的微信小游戏内置公用版本引擎插件库,只有在7.0.7以下版本才会读本地laya-libs
目录下的引擎库。
一旦勾选,就会只采用本地laya-libs
目录下的引擎库,而不再使用微信小游戏内置的公用版本引擎插件库。
除非是怀疑公用版本可能存在BUG,才需要勾选开启本地插件,通过本地与公用版本的对比,用于排查问题,或者真的有BUG,使用本地临时修改的版本。(一般是不需要的,引擎插件库只上传LayaAir引擎稳定版本,且会在官网更新后一两周才同步到引擎插件库)
6、FAQ
6.1 引擎插件支持哪些版本?
LayaAir 1.x引擎,当前支持 1.7.22、1.8.0、1.8.1、1.8.2、1.83、1.8.4。
LayaAir 2.x引擎,当前支持2.0.1、2.0.2、2.1.0、2.1.1、2.2.0。
其它的更多版本的查询方式可以在layabox官网文档中获得
1.x引擎文档:
https://ldc.layabox.com/doc/?nav=zh-as-5-0-8
2.x引擎文档:
https://ldc2.layabox.com/doc/?nav=zh-as-5-0-9
6.2 插件版引擎中包括哪些引擎库?
微信插件版引擎,并非是官网中引擎库的全部。
LayaAir 1.x引擎 包括的库为:
laya.ani.min.js
laya.core.min.js
laya.d3.min.js
laya.d3Plugin.min.js
laya.device.min.js
laya.filter.min.js
laya.html.min.js
laya.particle.min.js
laya.pathfinding.min.js
laya.tiledmap.min.js
laya.ui.min.js
laya.webgl.min.js
laya.wxmini.min.js
LayaAir 2.x引擎 包括的库为:
laya.ani.js
laya.core.js
laya.d3.js
laya.html.js
laya.particle.js
laya.ui.js
laya.webgl.js //仅在LayaAir2.1.0之前的版本存在
laya.d3Plugin.js//仅在LayaAir2.2.0之前的版本存在
laya.filter.js //仅在LayaAir2.2.0之前的版本存在
对于这些,开发者知道即可,后续可能会有所变化,不需要管太多,之前不用插件的时候怎么开发还是怎么开发。哪怕不知道引擎插件库包括哪些,也不影响使用。LayaAir会自动识别哪些库属于引擎插件库。不在插件库里的,引擎也会自动处理引用关系。
6.3、开放域中可以使用引擎插件吗?
开放域中目前还不可以使用引擎插件。未来也许可以。
6.4、LayaAir旧版本引擎在使用引擎插件有什么需要注意的吗?
引擎方面,要注意的是,必须要使用正式版,具体是哪些版本号,请按本文介绍的方式来查看。
IDE方面,
LayaAirIDE 1.x必须要升级到 >= 1.8.6 beta版本。
LayaAirIDE 2.x必须要升级到 >= 2.4.0 beta版本。
其它的,引擎与IDE都已做好适配,按本篇文档操作即可。
7、引擎版本预告
本文中涉及的LayaAirIDE1.8.6beta版与LayaAir IDE 2.4.0beta版,早已准备好,明天(本周三)向开发者公开发布。大家可以关注一下Layabox的公众号消息以及官网下载页面的更新。
1
END
推荐阅读:
应对苹果iOS新规,Layabox再次成功过审HTML5的APP包,同时推出iOS过审协助服务
LayaAir开始在GitHub实时提交了,2.3版支持任意多光源渲染, 3D效果华丽提升!3D导出插件支持Unity2018了!
重磅:LayaAir2.2将引擎源码全面切换至TypeScript,支持WebGL2.0,并增加大量3D实用功能