Egret Engine5.0发布,率先支持WebAssembly性能大幅提升
创始人
2025-02-12 17:51:51
0次

白鹭引擎团队历经半年封闭开发于5月24日推出 Egret Engine5.0,本次大版本更新率先支持 黑科技WebAssembly技术、完全支持 ES6、增添支持项目模块化升级等新功能,实现开发运行性能大幅提升。这些功能对于开发者都有哪些帮助,现已被一一揭晓。

一、率先支持 WebAssembly

l  什么是 WebAssembly?

WebAssembly是由谷歌、苹果、微软和Mozilla的工程师合力创建(又名wasm)的***国际前沿技术,能够运用在未来浏览器中承诺可带来20倍更快性能的字节码(bytecode)。WebAssembly项目创造全新的字节码(一种机器可读的指令集,能够更快为浏览器加载高级语言),让桌面和移动端浏览器相比较网页或者应用的整体源代码变得更加高效。

l  为什么要做 WebAssembly?

众所周知JavaScript 是解释型语言,慢,是解释性语言的主要特点。 Google 在 2009 年在 V8 中引入了 JIT 技术 (Just in time compiling 简称即时编译)。 有了JIT这个buff, Javascript 可实现瞬间提升 20 - 40 倍的速度。但是 JIT 技术也存在缺陷,在即时编译的时候有些类型无法确定,这个时候 JIT 非但没有提高效率可能适得其反,所以催生了两种思路解决这个问题。

一种思路是使用 Typescript、Dart 等强类型语言,实现所有的类型都标注清楚,可把这些语言再编译成 JavaScript 来运行。

还有一种思路就是以火狐的 Asm.js 为代表的,做一个 JavaScript 子集,利用标注的方法标注变量类型。

Asm.js 相对于 JIT 和原生的性能对比

上图长度越短说明性能越好,可以发现 Asm.js 是远远高于 JIT 的,因为其他方式只能使 JIT 性能快一点,即让即时编译速度再快一点,而 Asm.js 已经是编译好的字节码直接运行。

 WebAssembly 的工作方式如下:

Egret Engine5.0可以直接将 H5 游戏代码编译成机器码运行,对比Egret Engine4.0版效率提升可达300%。

说明: 引擎对比

在同一测试平台中,Egret Engine5.0对比Egret Engine4.0效率可提升300%

l  智能切换

Egret Engine5.0团队进行封闭开发期间,精心研磨着重重写了引擎底层从而支持 WebAssembly技术,为开发者提供更好的性能。如果浏览器不支持 WebAssembly ,5.0版引擎能够自动智能切换成正常 JavaScript 版本,开发者无需担忧正常使用。

二、完全支持 ES6、支持项目模块化升级

l  完全支持 ES6

除了黑科技 WebAssembly技术加持,Egret Engine5.0也完全支持 ES6 (JavaScript语言的下一代标准)新特性,开发效率将大幅提升,提高了代码健壮性和容错率,开发者可以随心所欲的使用 ES6 新特性。

l  支持项目模块化升级

同时,研发团队还对Egret Engine5.0进行了模块化分离,可以支持项目模块化升级。

例如,开发者经常反馈的声音问题,Egret Engine5.0在升级后解决了这个问题,但由于是线上项目引擎升级可能会导致不可预测的问题,所以开发者会选择谨慎升级。而Egret Engine5.0支持模块化升级后,开发中如果声音有问题可以单独升级声音模块,且不会影响其他模块的正常使用,其它模块升级则同理适用,极大的方便项目管理。

除了以上的特性外,白鹭工具团队也带来了全新的游戏创作工具 Paper,寓意轻松、快捷,致力于让大家更加高效的创作 H5 游戏。Paper 以可视化制作游戏为主,编写代码为辅,可以进一步的解放开发者。目前该款工具还处于内测阶段,正式上线时间待定,颇为值得开发者期待。

Egret Engine5.0的推出标志着 H5 开发从 JIT 方式向 WebAssembly 方式的迈进,同时也标志着向模块化管理项目的进步,白鹭引擎希望用更好的产品服务众多忠诚开发者,开发者近期可下载***版引擎,率先触及黑科技产品带来的***性能开发效率体验。

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
粉嫩如何诠释霸道 东芝M805... “霸道粉”是个什么玩意东芝M805拿过来的时候,笔者扑哧笑了,不是笑这款笔记本,而是笑这款产品的颜色...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
只需三步,让你掌握阿尔法路由器... 请参照以下阿尔法路由器设置方法,通过浏览器进入及设置宽带路由器。经过这三个步骤的设置,基本上能够熟悉...
如何更省钱? 近期特价热门硒鼓... 如今激光打印设备已经成为商务或企业的绝对主力办公设备,但采购者往往忽视了激光打印设备所用的耗材,相对...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...