egret runtime h5游戏加速组件2.0官方版是一款为h5游戏打造的游戏加速工具,可以作为扩展模块无缝的嵌入到移动浏览器或一个移动原生应用中。让Egret开发的HTML5游戏以接近原生的表现在用户手机终端中高效运行。
通常情况下,一款HTML5游戏的底层实现技术原理如下:
采用 HTML5 Canvas 进行绘图,在浏览器的 WebView 中进行渲染。
采用 HTML5 Audio 或 WebAudio API 进行声音播放。
采用浏览器提供的集成API完成游戏需要的各种操作。
这种做法带来的问题是,HTML5游戏过于依赖浏览器提供的接口,而浏览器在最初设计时就不是为游戏考虑的,所以 HTML5 游戏往往存在以下问题:
在缺乏硬件加速 WebView支持的情况下渲染性能极差,游戏卡顿严重。
声音在特定设备上,不支持音乐音效混播。
无法获取详细的设备类型和参数。
本地存储机制不稳定且不够灵活。
在跨平台的适配标准上是碎片化的。
Egret Runtime 作为浏览器和应用的一个扩展组件的出现,直接支持了 HTML5 游戏运行所需要的所有底层功能,能够解决上述诸多问题。
启动一个具有Egret Runtime的App的典型流程:
当用户点击游戏图标时,App启动Egret Runtime,并设定该游戏的信息。
Egret Runtime根据启动信息得到该游戏信息,并向指定的云(或服务器)开始请求该游戏的更新列表。
获得云响应,得到更新列表,执行更新并启动游戏,用户开始游戏。
用户退出游戏,Egret Runtime退出,回到App的控制中。
总体架构
Runtime的组成部分有:JavaScript的Runtime,OpenGL ES的图形渲染接口,MediaPlayer的声音与Sound音效的管理,手机事件的监听,网络接入等功能。
JavaScript Runtime。用于解释执行Egret游戏逻辑。
OpenGL ES图形渲染接口。调用Native的OpenGL ES接口GLSurfaceView进行渲染。
声音与音效。调用MediaPlayer和Sound
用户交互。处理用户交互事件,比如触摸。
网络接入。用来热更新和动态加载游戏资源。
JavaScript 绑定
Egret runtime核心包含一个JavaScript的解析引擎,运行 JavaScript 逻辑,并通过接口绑定的方式将 JavaScript 函数映射到 Native实现中,JavaScript绑定是最终业务逻辑实现是松耦合的架构。
渲染机制
在传统HTML5游戏中,游戏渲染是由手机 WebView 的canvas标签实现的,受限于WebView并不仅仅是为了纯粹的游戏而生的客观条件,以及部分浏览器对硬件加速支持不佳,导致了基于 HTML5 canvas的游戏整体表现不佳。egret runtime 直接访问底层的OpenGL ES,最大程度的挖掘设备的性能潜力。
Native接口实现
Egret runtime 封装了 JavaScript -> C++ -> Android Native的接口通讯过程,包括触摸、声音、网络、设备信息等接口都可以在 JavaScript层通过这个接口获取。
如何判断统计是否接入成功?
查看 浏览器审查元素里 loadingStat.php 返回值 {“code”:0,”msg”:”ok”} 表示接入成功否则返回失败原因
如果找不到 loadingStat.php 请查看 EgretSA.init() debug 参数是否是true,true 默认是不会发送统计的,需要改成false
编译不能通过 Cannot find name ‘esa’ ,编译项目的时候用 egret build -e 把引擎和项目一起编译一下。
76.4M / 03-25
立即下载55M / 06-05
立即下载237.9M / 04-13
立即下载140.5M / 03-06
立即下载900.9M / 03-02
立即下载96.2M / 07-06
立即下载311.2M / 07-06
立即下载335M / 07-06
立即下载200M / 07-06
立即下载413.8M / 07-06
立即下载353.9M / 06-05
立即下载131.8M / 04-13
立即下载230.8M / 03-03
立即下载195.6M / 03-03
立即下载165.4M / 03-03
立即下载45.6M / 09-08
立即下载665.2M / 07-06
立即下载2.84G / 07-06
立即下载93M / 07-06
立即下载338.3M / 07-06
立即下载1.38G / 07-26
立即下载488.3M / 07-16
立即下载109.8M / 06-03
立即下载142M / 01-08
立即下载1.2M / 11-23
立即下载548.8M / 04-13
立即下载1.6M / 04-13
立即下载1.48G / 03-18
立即下载646.6M / 03-03
立即下载133.7M / 03-03
立即下载325.8M / 06-07
立即下载60M / 04-29
立即下载254M / 04-25
立即下载659M / 04-23
立即下载1M / 12-26
立即下载253.4M / 12-08
立即下载253M / 12-08
立即下载1.19G / 11-16
立即下载110.5M / 04-23
立即下载26.7M / 03-16
立即下载488.3M / 07-16
立即下载248.9M / 12-08
立即下载248.9M / 12-08
立即下载201.2M / 04-13
立即下载100.6M / 03-06
立即下载148.9M / 03-06
立即下载1.12G / 07-06
立即下载1.25G / 07-06
立即下载9.48G / 07-06
立即下载50KB / 07-06
立即下载116.2M / 04-10
立即下载1.92G / 04-17
立即下载201.5M / 04-13
立即下载7.31G / 07-01
立即下载94.3M / 07-06
立即下载2.48G / 07-06
立即下载7.63G / 07-06
立即下载1M / 07-06
立即下载778.1M / 07-06
立即下载509.7M / 07-06
立即下载561.8M / 07-11
立即下载1.32G / 01-19
立即下载72M / 07-06
立即下载548.7M / 07-06
立即下载1.00G / 07-06
立即下载9.13G / 07-06
立即下载126.2M / 07-06
立即下载72M / 07-06
立即下载105.1M / 07-06
立即下载132M / 07-06
立即下载