本次版本主要支持了压缩纹理的渲染,首要解决GPU内存压力。支持实时修改游戏播放速度,增加更多表现力。新增 Spine4.0 的支持,并且抽离了spine的公共文件,降低多个 Spine 版本功能同步的成本。提供扩展type的能力,插件开发可增加对引擎核心能力的扩展。为交互事件提供相对于当前对象的点击位置。优化帧动画能力,可停止在最后一帧。
主要修复了一些常见问题,Spine 在特定参数下无法播放问题,资源加载进度问题以及A11y的DOM层级问题。
在生态方面,支持淘宝/支付宝小程序中运行,IIFE支持微信小游戏中使用Eva.js。
Eva.js v1.2 已在以下项目中使用:淘宝双11 / 芭芭农场 / 淘宝斗地主 / 薅羊毛赚话费,目前版本已经升级到1.2.2,我们一般在自己的业务中验证大版本稳定性,在进行正式发布。
重点特性介绍
压缩纹理
常见的图片文件格式,比如 PNG/JPEG/Webp 等,是为了存储图像信息的特殊编码方式,只能存在硬盘中或内存中,无法被 GPU 直接识别。纹理压缩格式,是一种 GPU 能直接读取并显示的格式,使得图像无需解压即可进行渲染,节约大量的内存。
可以通过官方提供的 texture-compressor 工具生成压缩纹理文件。
阿里巴巴内网用户结合 EVA Store 提供的资源管理能力,点击 预览代码 可以直接生成压缩纹理并且直接提供 Eva.js 支持的代码。
游戏播放速度控制
通过控制游戏播放速度,可以实现更丰富的游戏效果。
淘宝 / 支付宝小程序
Eva.js@^1.2.2
Evs.js 现已支持淘宝 / 支付宝小程序中互动游戏的开发。
微信小游戏
通过微信 weapp-adapter 快速支持小程序,虽然需要使用 IIFE 的方式引入 Eva.js 文件,但能够顺利渲染成功,为未来生态扩展提供一个可行性方案。