设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 软件追踪 查看内容

白鹭引擎 5.1.6优化打包iOS/Android App的运行性能

2018-3-12 22:27| 发布者: joejoe0332| 查看: 502| 评论: 0|原作者: oschina|来自: oschina

摘要: 在3月12日,我们将为白鹭引擎推出5.1.6 版本。5.1.6版本是对去年12月份发布的5.1版本的一次功能更新和集中性缺陷修复,主要目标是添加新的 iOS/Android App 打包支持,以及完善微信小游戏、QQ玩一玩、AssetsManager ...

在3月12日,我们将为白鹭引擎推出5.1.6 版本。5.1.6版本是对去年12月份发布的5.1版本的一次功能更新和集中性缺陷修复,主要目标是添加新的 iOS/Android App 打包支持,以及完善微信小游戏、QQ玩一玩、AssetsManager的稳定性。

iOS/Android 原生打包
在这次更新发布的 Egret Launcher 中,我们在发布设置中整合了iOS 与 Android 平台的发布设置。
 
自2014年底起,白鹭引擎推出的2.0 版本便已经支持开发者将游戏打包为 iOS / Android App 发布到原生平台中,除此之外,2017年我们又推出了微端解决方案。在这次更新中,我们将 iOS / Android Support 的底层内核切换为了微端内核,并添加了新的 NativeRenderer 机制,大幅提升了打包后的 App 的渲染性能。
 
之所以会有如此重大的提升,这是因为在之前的 iOS / Android Support 中,原生内核虽然提供了优化后的 HTML5 Canvas2D / WebGL 渲染接口,但是核心渲染驱动仍然是由 JavaScript 逻辑执行的,在新推出的 NativeRenderer 中,渲染驱动逻辑从 JavaScript 端迁移到了 Native C++ 端,这样做会大幅降低 JavaScript 引擎的负担,特别是在所有的 iOS 设备以及低端 Android 设备中表现极其明显。
 
需要注意的是,由于在 iOS / Android 上的渲染驱动迁移到了 Native 端,开发者不再能够通过 Hack 引擎的 JavaScript 代码的方式去修改打包后的渲染行为。这相当于我们牺牲了一定的灵活性换来了更高的性能,如果开发者希望保留这些灵活性,您也可以强制关闭 NativeRenderer ,仍然使用之前机制。

NativeRenderer 已经在数个正式发布的产品中得到了使用,除了实际产品验证之外,NativeRenderer 也通过白鹭自研的内部自动化测试系统中进行了200余个测试用例的测试,目前绝大部分测试用例均已通过。
在尚未通过的测试用例中,以下图为例,我们可以看出,iOS 打包无论使用旧的 JavaScriptRenderer还是新的NativeRenderer ,发光滤镜、颜色变换滤镜和模糊滤镜的渲染结果均完全一致,但是投影滤镜仍然存在一些肉眼较难发现的问题。这些问题我们会逐步解决,如果您在使用中发现了问题,也欢迎您贡献测试用例给官方。
 
NativeRenderer 需要白鹭引擎 5.1.5 以上的版本才可以使用。

除了 NativeRenderer之外,本次更新还带来了如下内容:

2D 渲染 - JavaScript

  • 修复设置一次虚线后,后续所有绘制均为虚线的BUG 

  • 修复 DragonBones Mesh 渲染旋转在特定情况下的渲染BUG 

AssetsManager

  • 现在您可以为不同的资源配置文件设置不同的资源加载根路径,通过与 ResSplitPlugin 插件配合,可以用于更方便的解决微信小游戏的 4M 资源包限制问题

  • 微信小游戏添加 canvas2d 模式渲染支持,以解决部分设备在微信小游戏中使用 webgl 模式渲染错误的问题

  • 修复特定情况下在真机上资源加载失败的 BUG

QQ 玩一玩

  • 修复了BitmapText字体位置偏移的问题

  • 增加了底层背景,在启动项中增加了背景颜色的设置

  • 修复了DisplayObject scrollRect无效的问题

  • 修复了EUI scroller显示错误的问题


酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部