一种移动终端基于EgretRuntime运行游戏的方法及装置的制造方法

文档序号:8543540阅读:446来源:国知局
一种移动终端基于Egret Runtime运行游戏的方法及装置的制造方法
【技术领域】
[0001]本发明涉及Egret Runtime技术领域,特别涉及一种移动终端基于Egret Runtime运行游戏的方法及装置。
【背景技术】
[0002]在当前移动平台(如,智能手机、平板电脑等手持式智能电子设备,以下无特殊说明的均简称移动设备)的应用程序生态中,游戏类应用占了巨大的比重,因为游戏类应用较通用类应用涉及更多的技术点,从高速刷新的视频和音频的播放、触摸屏幕的各种手势以及重力感应等多种感应器数据的操作、各种设备大小的屏幕适配、不同的操作系统的开发环境,导致游戏类应用的开发在技术方面困难重重。因此,游戏引擎应运而生,试图解决游戏开发的困难,降低开发者的门槛。
[0003]在现有技术中,所有的游戏应用都要先下载一个较大的安装包才能进行游戏,除了超级文本标记语言(HTML:Hyper Text Markup Language)游戏可以即点即玩,但是由于HTML自身的设计原因,不能访问到系统的文件和其他操作系统底层的接口,还有个重要的问题就是HTML的游戏性能不高,几乎不到游戏应用的一半,甚至更少。可见,HTML的游戏性能不佳,只适用于运行计算量较少的轻度游戏,而游戏市场中产生价值的往往是中重度游戏。
[0004]美国Unity公司是为数不多的一家提供了移动设备游戏应用开发的公司,用户可以使用C#或者JavaScript(UnityScript)编写简单的行为脚本,通过其Runtime技术,可以同时将该游戏发布到Android(美国Google公司的移动设备的操作系统)、1S(美国Apple公司的移动设备的操作系统)、Windows Phone (美国Microsoft公司的移动设备的操作系统)等移动设备中。对于国内开发者来说,由于语言等客观原因导致不能及时的得到Unity公司的最新技术,并且C#是Unity公司的主要开发工具(引自Unity官方数据显示,http://blogs.unity3d.com/cn/2014/09/03/documentat1n-unity-scripting-languages-and-you/),而C#作为一门优秀的计算机语言,要求开发者具有比较高的编程基础,因此给开发者带来不同程序的影响。
[0005]美国Adobe公司的Flash提供个人电脑PC,Mac,Unix,Linux游戏类应用开发的开发环境。开发者使用Act1nScript脚本语言编写一次,即可分发到各个安装了 FlashPlayer的个人电脑。但是,由于移动设备与个人电脑的定位,以及Flash Player的耗电量,安全问题和市场因素,导致移动设备系统开发商拒绝将Flash植入到系统中。

【发明内容】

[0006]本发明的目的在于提供一种移动终端基于Egret Runtime运行游戏的方法及装置,能够解决游戏脚本需要被多次编写以满足多个移动平台公布,以及游戏性能体验差的冋题。
[0007]根据本发明的一个方面,提供了一种移动终端基于Egret Runtime运行游戏的方法,包括:
[0008]移动终端接收并保存由游戏开发商将游戏逻辑和Egret Runtime打包成的应用程序;
[0009]所述移动终端检测到游戏启动信号后,使所述应用程序中的Egret Runtime启动;
[0010]将启动后的Egret Runtime及所述应用程序中的游戏逻辑加载到移动终端内存;
[0011]在内存中运行的Egret Runtime将适配于移动终端操作系统的游戏逻辑的交互指令告知移动终端操作系统,以便所述移动终端操作系统根据所述交互指令完成交互动作;
[0012]其中,所述Egret Runtime是游戏加速器组件。
[0013]优选地,所述Egret Runtime 包括:JavaScript 接口、JavaScript 引擎、C++接口和封装的系统接口。
[0014]优选地,所述应用程序中的Egret Runtime启动的步骤之后还包括:
[0015]所述移动终端在内存中创建一个Egret Runtime运行实例,并在所述EgretRuntime运行实例中设置游戏名称,加载游戏的目标目录,保存游戏的目标目录,以及更新游戏的目标目录。
[0016]优选地,所述的将启动后的Egret Runtime及所述应用程序中的游戏逻辑加载到移动终端内存的步骤包括:
[0017]所述移动终端根据Egret Runtime运行实例中所设置的加载游戏的目标目录,将启动后的Egret Runtime及所述应用程序中的游戏逻辑加载到移动终端内存中的EgretRuntime运行实例。
[0018]优选地,还包括:
[0019]当游戏需要进行更新时,所述移动终端根据Egret Runtime运行实例中所设置的更新游戏的目标目录,进行游戏的热更新。
[0020]优选地,所述的在内存中运行的Egret Runtime将适配于移动终端操作系统的游戏逻辑的交互指令告知移动终端操作系统的步骤包括:
[0021]将JavaScript语言经由JavaScript接口发送给JavaScript引擎,并调用C++接口和封装的系统接口后,得到适配于移动终端操作系统的游戏逻辑的交互指令;
[0022]将适配于移动终端操作系统的游戏逻辑的交互指令告知移动终端操作系统;
[0023]其中,所述移动终端操作系统包括:Android、1S和Windows Phone。
[0024]优选地,还包括:
[0025]当所述移动终端检测到游戏操作信号后,将所述游戏操作信号经由封装的系统接口和C++接口,告知JavaScript引擎;
[0026]所述JavaScript引擎根据接收到的游戏操作信号进行游戏逻辑处理,并将处理后的游戏逻辑通过依次调用C++接口和封装的系统接口后,发送给所述移动终端操作系统。
[0027]优选地,还包括:
[0028]当所述移动终端检测到游戏暂停信号后,使所述Egret Runtime停止运行游戏并根据Egret Runtime运行实例中所设置的保存游戏的目标目录保存游戏状态,以便交由所述移动终端操作系统进行管理;
[0029]当所述移动终端检测到游戏停止信号后,销毁所述移动终端内存中的整个EgretRuntime运行实例。
[0030]根据本发明的另一方面,提供了一种移动终端基于Egret Runtime运行游戏的装置,包括:
[0031]接收模块,用于移动终端接收并保存由游戏开发商将游戏逻辑和Egret Runtime打包成的应用程序;
[0032]启动模块,用于所述移动终端检测到游戏启动信号后,使所述应用程序中的EgretRuntime 启动;
[0033]加载模块,用于将启动后的Egret Runtime及所述应用程序中的游戏逻辑加载到移动终端内存;
[0034]运行模块,用于在内存中运行的Egret Runtime将适配于移动终端操作系统的游戏逻辑的交互指令告知移动终端操作系统,以便所述移动终端操作系统根据所述交互指令完成交互动作。
[0035]优选地,还包括:
[0036]告知模块,用于当所述移动终端检测到游戏操作信号后,将所述游戏操作信号经由封装的系统接口和C++接口,告知JavaScript引擎;
[0037]发送模块,用于所述JavaScript引擎根据接收到的游戏操作信号进行游戏逻辑处理,并将处理后的游戏逻辑通过依次调用C++接口和封装的系统接口后,发送给所述移动终端操作系统。
[0038]与现有技术相比较,本发明的有益效果在于:能够通过为Egret Engine编写的TypeScript语言的游戏提供一种Runtime技术的方法,使用被开发者广泛认同的简单易学的计算机语言,通过一次编写实现多移动平台发布,更加接近使用系统原生语言编写的游戏性能。同时,在移动设备上实现了游戏,以及Egret Runtime的热更新,并且拥有HTML5即点即玩的便利,以及比HTML5体验度更高的游戏性能。
【附图说明】
[0039]图1是本发明实施例提供的
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1