新年伊始,白鹭科技于1月2日正式发布白鹭引擎(Egret Engine)5.1.2,本次版本是针对在17年12月份发布的白鹭引擎5.1.1版本的一次功能迭代。更新后白鹭引擎完善了对微信小游戏支持,并引入了 AssetsManager资源管理器,这使得开发者可以更方便的创建和维护小游戏项目。
完善对微信小游戏支持
去年12月底,微信正式上线小游戏后,白鹭官方已在白鹭引擎 5.1.1 版本中添加了对微信小游戏的支持,这项功能目前得到了许多开发者的积极使用和反馈。在白鹭引擎5.1.2中,根据开发者的反馈我们进行了相关改进,使得开发者可以更方便的创建和维护微信小游戏项目。目前,开发者可以通过 Egret Launcher 进行可视化的创建微信小游戏项目,而非使用白鹭引擎的命令行。
升级至5.1.2后,开发者能够直观的看到在“项目”面板中的每个 Egret 项目均包含了一个名为“发布设置”的按钮。
开发者点击这个按钮后,可以通过图形化的方式下载白鹭引擎的微信小游戏支持包,并生成自己的微信小游戏项目。
除了图形化界面之外,我们还在这个版本中添加了如下与微信小游戏有关的修改:
- 创建微信小游戏项目可以不用传入 appid ,白鹭引擎会为开发者设置一个微信官方为开发者提供的默认值。
- 添加了当前发布目标功能,开发者可以设置当前的发布目标。例如,如果将发布目标设置为 wxgame,开发者就至需进行 egret build / egret publish / egret run 而无需添加 –target wxgame 字段。
- 微信小游戏支持包更新至1.0.4 版本,新项目模板添加了可以直接调用微信小游戏 API 的Demo,并添加手动修改屏幕适配尺寸的 API。
- 白鹭引擎项目模板升级,开发者无需再手动修改 scripts/config.ts就可以自动生成小游戏项目。
- 添加 egret run –target wxgame命令,开发者可以通过调用这个命令直接启动微信web开发者工具对小游戏进行预览。
引入 AssetsManager资源管理器
白鹭引擎在 4.0 版本引入了名为 “ResourceManager ”的资源管理器作为 RES 模块的替代方案。经过长达一年的用户反馈收集与功能迭代,我们在白鹭引擎 5.1.2 版本中正式将 ResourceManager 作为创建新项目的默认模块,彻底取代 RES 模块,并将其正式改名为 “AssetsManager” 。
此前的ResourceManager 模块与 RES 模块有90%的 API 是完全一致的,AssetsManager 在继承了这一基础上也完全支持 RES 模块,形如 default.res.json的配置文件,以保证尽可能的保证开发者继续使用自己熟悉的工作流并进行逐步的迁移。
在更新 AssetsManager 的同时,我们还为资源管理模块加入了两个非常实用的构建管线插件,分别是:
- 资源配置文件自动生成插件,开发者可以使用这个插件对 default.res.json配置文件进行自动生成。
- 纹理集自动合并插件,开发者可以使用这个插件在 egret publish的过程中进行纹理的自动合并。
- 使用 AssetsManager 代替 RES 模块时,会存在以下不兼容问题:
- 不再支持 RES.Analyzer API,改用 RES.Processor API 代替。
- 如果尝试获取资源配置文件中不存在的配置,目前会抛出异常,而非返回 null。
虽然我们建议开发者使用 AssetManager 模块,但是白鹭引擎目前仍然允许开发者继续使用 RES 模块。开发者只需在egretProperties.json配置文件中,将assetsmanager修改为res并执行 egret clean 即可。
BUG 修复
- 修复了当发布模式设置为 commonjs 时,如果开发者在 exml 文件的 className 属性上使用了自定义命名空间,会导致发布代码报错的 BUG。
- 修复了 exml 文件生成的 exml.e.d.ts 文件中,皮肤文件没有正确的继承 eui.Skin 的问题。
- 修改了 egret publish 的默认发布路径,以修复 Egret Wing 进行发布的同时进行纹理合并产生的冲突。
- 修复了 eui 布局在特定情况下异常的问题。
- 修复了 不规则遮罩绘制位置偏移的问题。
- 修复了使用滤镜导致绘制位置偏移的问题。
更多功能敬请期待
在白鹭引擎 5.1版本的更新日志中,我们提到 5.1版本会逐步为开发者提供以下功能:
- 将内置的资源加载模块切换至 Egret ResourceManager。
- 改善 EUI 的加载速度和资源尺寸。
- 大幅提升原生App 的运行性能。
- 更多的发布平台支持。
- 更快的构建速度
目前,我们已经完成了内置资源加载模块迁移 ResourceManager ( 已更名为 AssetsManager ) 以及微信小游戏发布平台的支持工作,并初步改善了 EUI 的加载速度与资源尺寸。后续版本我们会提供如下功能,并尽快保持 5.1 版本的稳定性:
- 进一步改善 EUI 的加载速度和资源尺寸。
- 大幅提升原生App 的运行性能。
- 对微信小游戏平台更好的支持。
- 更快的构建速度。
转自 http://www.oschina.net/news/92246/egret-engine-5-1-2