CN106445508B - 一种游戏引擎 - Google Patents

一种游戏引擎 Download PDF

Info

Publication number
CN106445508B
CN106445508B CN201610811025.9A CN201610811025A CN106445508B CN 106445508 B CN106445508 B CN 106445508B CN 201610811025 A CN201610811025 A CN 201610811025A CN 106445508 B CN106445508 B CN 106445508B
Authority
CN
China
Prior art keywords
game
unit
engine
engine module
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610811025.9A
Other languages
English (en)
Other versions
CN106445508A (zh
Inventor
刘振荣
朱顺炎
朱伟
李晓峰
曹兵强
罗伙华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Heping Network Technology Co.,Ltd.
Original Assignee
Alibaba China Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba China Co Ltd filed Critical Alibaba China Co Ltd
Priority to CN201610811025.9A priority Critical patent/CN106445508B/zh
Publication of CN106445508A publication Critical patent/CN106445508A/zh
Application granted granted Critical
Publication of CN106445508B publication Critical patent/CN106445508B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • G06F8/22Procedural
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供一种游戏引擎,包括:游戏框架模块、第二引擎模块、位于游戏框架模块和第二引擎模块之间的第一引擎模块,其中,第二引擎模块的内核单元的对象单元包括缓存子单元,在该缓存子单元中,以主机域名和端口号,或者以地址和端口号组成的域来决定唯一的主机目录,所述主机目录存放该域下涉及到的app cache文件及普通的缓存文件,且以manifest文件的URL为标志来决定一个app cache文件的存储空间。

Description

一种游戏引擎
本专利申请是申请日为2013年7月30日、申请号为CN 201310324724.7、发明名称为“一种游戏引擎”的发明专利申请的分案申请,其在此全部引入作为参考。
技术领域
本发明涉及移动网络游戏技术领域,更为具体地,涉及一种游戏引擎。
背景技术
网页HTML5的标准已经制定,但各平台对HTML5的支持并不好,存在较为严重的兼容性问题和性能问题,导致HTML5应用一直处于无法大规模推广状态,采用HTML5开发游戏问题更为严重,因为游戏对HTML5的性能要求更高。另一方面,因为HTML5具备跨平台特性和开放性,如果能充分利用HTML5标准,则游戏开发商可以大大降低游戏研发成本和发行成本。对于用户而言,也希望游戏可以随处可玩,游戏的更新迭代速度更快。
上述问题的实现都和游戏引擎相关,现有技术中提供的游戏引擎,一般具有以下特点:1)都是自有封装一套API(Application Programming Interface,应用程序编程接口),就是各自定义属于自己的标准。2)面向的开发者是熟悉编译型语言的开发者,例如c/c++或java语言,开发成本比较高。3)并未有提供完整的资源更新方案,需要开发者自己开发。
因此,现有手机游戏的游戏引擎,存在平台不兼容、开放程度低、开发复杂等问题。
发明内容
鉴于上述,本发明提出了一种游戏引擎,能支持目前HTML5的基本特性,屏蔽平台差异性,方便游戏开发者在手机平台上开发游戏,提高游戏性能和体验。
根据本发明的一个方面,提供了一种游戏引擎,包括:游戏框架模块、第二引擎模块、位于游戏框架模块和第二引擎模块之间的第一引擎模块;所述游戏框架模块,用于存储游戏程序脚本;所述第一引擎模块,用于加载、解析并执行所述游戏框架模块中的游戏程序脚本,在执行过程中调用所述第二引擎模块提供的定义对象和API接口;所述第二引擎模块,用于为所述第一引擎模块提供扩展的定义对象和扩展的API接口,为所述游戏框架模块中的游戏程序脚本提供HTML5运行环境;其中,所述第二引擎模块通过NPAPI接口和移动终端的浏览器进行交互。
所述第二引擎模块包含内核单元、包壳单元和插件单元;所述插件单元,用于在通过NPAPI接口获取移动终端的浏览器的指令后,调用所述内核单元;所述内核单元,用于在被所述插件单元调用后,为所述第一引擎模块执行所述游戏框架模块中的游戏程序脚本提供扩展的定义对象和扩展的API接口,为所述游戏框架模块中的游戏程序脚本提供HTML5运行环境;所述包壳单元,用于利用所述内核单元的设置,提供将所述第二引擎模块打包成客户端形式供内容提供商使用的功能。
所述第二引擎模块的内核单元包括对象单元和接口单元;所述对象单元,用于为所述第一引擎模块执行所述游戏框架模块中的游戏程序脚本提供扩展的定义对象,为所述游戏框架模块中的游戏程序脚本提供HTML5运行环境;所述接口单元,用于为所述第一引擎模块执行所述游戏框架模块中的游戏程序脚本提供扩展的API接口。
所述第二引擎模块的内核单元的对象单元包括:画布子单元,用于为所述第一引擎模块提供可调用的Canvas对象,实现HTML5的画布功能;WebSocket子单元,用于为所述第一引擎模块提供可调用的WebSocket对象,按HTML5标准实现与服务器的通信。
所述第二引擎模块的内核单元的对象单元还包括以下的一个或多个子单元:XHR子单元,用于为所述第一引擎模块提供可调用的XHR对象,实现本地和网络数据的读取;音频子单元,用于为所述第一引擎模块提供可调用的Audio对象,实现音频处理;本地存储子单元,用于为所述第一引擎模块提供可调用的LocalStorage对象,实现按照域名存储数据;Cookie子单元,用于为所述第一引擎模块提供可调用的Cookie对象,实现按照域名存储Cookie信息;缓存子单元,用于为所述第一引擎模块提供可调用的ApplicationCache对象,实现存储缓存文件。
所述缓存子单元中,以主机域名和端口号,或者以地址和端口号组成的域来决定唯一的主机目录,所述主机目录存放该域下涉及到的app cache文件及普通的缓存文件,且以manifest文件的URL为标志来决定一个app cache文件的存储空间。
所述第二引擎模块的内核单元的接口单元包括以下的一个或多个接口:OpenGLES接口,用于提供接口实现图形渲染,被所述画布子单元进行封装实现对渲染性能的加速;媒体播放接口,用于提供接口实现音频播放;套接字接口,用于提供接口实现网络请求;文本存储接口,用于提供接口实现数据存储。
所述游戏引擎包括:所述画布子单元创建Canvas对象,其中每个Canvas对象维护有画图列表,所述画图列表里面的对象对应屏幕上的元素;所述OpenGLES接口的缓冲区接收所述Canvas对象维护的画图列表中的元素的填充,再通过GLSurfaceView视图显示渲染的图像。
所述第二引擎模块的插件单元包括:获取子单元,用于通过NPAPI接口获取移动终端的浏览器当前运行的上下文;请求单元,用于利用所述上下文向移动终端操作系统发起调用所述第二引擎模块的内核单元的请求,使得所述移动终端操作系统接收请求后调用所述内核单元。
所述游戏框架模块具体为JS游戏框架,所述第二引擎模块具体为加速引擎,所述第一引擎模块具体为JS引擎,所述第二引擎模块中的内核单元具体为X-Canvas内核,所述包壳单元具体为X-Canvas包壳,所述插件单元具体为X-Canvas插件。
利用上述技术方案,在游戏引擎中,通过新增的第二引擎模块为第一引擎模块提供扩展的定义对象和扩展的API接口,并为游戏程序脚本提供HTML5运行环境,使得在第一引擎模块在游戏程序脚本的执行过程中可以调用第二引擎模块提供的定义对象和API接口,从而克服现有技术的游戏引擎各自封装一套API接口而不兼容的缺陷,实现屏蔽平台差异性,方便游戏开发者在手机平台上开发游戏,提高游戏性能和体验。
为了实现上述以及相关目的,本发明的一个或多个方面包括后面将详细说明并在权利要求中特别指出的特征。下面的说明以及附图详细说明了本发明的某些示例性方面。然而,这些方面指示的仅仅是可使用本发明的原理的各种方式中的一些方式。此外,本发明旨在包括所有这些方面以及它们的等同物。
附图说明
根据下述参照附图进行的详细描述,本发明的上述和其他目的、特征和优点将变得更加显而易见。在附图中:
图1是本发明实施例的游戏引擎的结构示意图;
图2是本发明实施例的游戏引擎中的第二引擎模块的结构示意图;
图3是本发明实施例的游戏引擎中的第二引擎模块的内核单元的结构示意图。
在所有附图中相同的标号指示相似或相应的特征或功能。
具体实施方式
下面描述本公开的各个方面。应该明白的是,本文的教导可以以多种多样形式具体体现,并且在本文中公开的任何具体结构、功能或两者仅仅是代表性的。基于本文的教导,本领域技术人员应该明白的是,本文所公开的一个方面可以独立于任何其它方面实现,并且这些方面中的两个或多个方面可以按照各种方式组合。例如,可以使用本文所阐述的任何数目的方面,实现装置或实践方法。另外,可以使用其它结构、功能、或除了本文所阐述的一个或多个方面之外或不是本文所阐述的一个或多个方面的结构和功能,实现这种装置或实践这种方法。此外,本文所描述的任何方面可以包括权利要求的至少一个元素。
本发明提出了一种游戏引擎,能支持目前HTML5的基本特性,屏蔽平台差异性,方便游戏开发者在手机平台上开发游戏,提高游戏性能和体验。
下面将参照附图描述本发明的各个实施例。
图1是本发明实施例的游戏引擎的结构示意图。
如图1所示,游戏引擎包括:游戏框架模块、第二引擎模块、位于游戏框架模块和第二引擎模块之间的第一引擎模块,第二引擎模块通过NPAPI(Netscape PluginApplication Programming Interface,网景插件应用程序编程接口)接口和移动终端的浏览器进行交互。
其中,游戏框架模块,用于存储游戏程序脚本;
第一引擎模块,用于加载、解析并执行所述游戏框架模块中的游戏程序脚本,在执行过程中调用所述第二引擎模块提供的定义对象和API接口;
第二引擎模块,用于为所述第一引擎模块提供扩展的定义对象和扩展的API接口,为所述游戏框架模块中的游戏程序脚本提供HTML5运行环境。
进一步的,游戏框架模块具体为JS(Javascript)游戏框架,第二引擎模块具体为加速引擎,第一引擎模块具体为JS引擎。加速引擎是用于扩展JS引擎,而游戏框架是运行在JS引擎上面,因此可以说JS引擎是加速引擎和游戏框架两者之间的连接桥梁。
具体的,游戏框架是被JS引擎加载、解析和执行,因此可以认为游戏框架是运行在JS引擎上面。游戏引擎中是提供一些可选的JS游戏框架,即在游戏引擎可插拔地加入了一些游戏框架。
游戏框架模块存储的游戏程序脚本可以分两种,一种是游戏引擎提供的游戏库中的游戏程序脚本(目前提供createjs、quarkjs、box2d等游戏程序脚本),另外一种是游戏逻辑的游戏程序脚本。开发游戏时可以自行引入一些第三方的游戏库,例如CreateJS,QuarkJS,Cocos2D-HTML5等库,这可以给游戏开发提供足够的灵活性。
具体的,JS引擎可以进行各种不同操作,包括例如数据类型操作、Runtime(运行时刻)控制、类与对象的创建和维护、函数与脚本执行、字符串操作、错误处理、安全控制、Debug支持等功能。与游戏程序相关的操作则包括:加载、解析并执行游戏框架模块中的游戏程序脚本,并在执行过程中调用第二引擎模块提供的定义对象和API接口。
具体的,加速引擎可以提供使用OpenGL(Open Graphics Library)硬件加速实现的HTML5的运行环境,为JS引擎提供扩展的定义对象和扩展的API接口,例Canvas对象和OpenGLES(OpenGL for Embedded Systems)接口等,实现加速HTML5游戏的功能。
图2是本发明实施例的游戏引擎中的第二引擎模块的结构示意图。
第二引擎模块(加速引擎)是游戏引擎中最重要和关键的部分。如图2所示,第二引擎模块包含内核单元、包壳单元和插件单元。
具体的,内核单元指X-Canvas内核、包壳单元指X-Canvas包壳、插件单元指X-Canvas插件。本发明的游戏引擎也称为X-Canvas游戏引擎。
其中,插件单元,用于在通过NPAPI接口获取移动终端的浏览器的指令后,调用所述内核单元;
内核单元,用于在被所述插件单元调用后,为所述第一引擎模块执行所述游戏框架模块中的游戏程序脚本提供扩展的定义对象和扩展的API接口,为所述游戏框架模块中的游戏程序脚本提供HTML5运行环境;
包壳单元,用于利用所述内核单元的设置,提供将所述第二引擎模块打包成客户端形式供内容提供商使用的功能。
具体的,包壳单元提供与第二引擎模块相关的jar包和so库,使得内容提供商利用android系统本身的打包工具将所述第二引擎模块打包成客户端形式。
进一步的,所述第二引擎模块的插件单元包括:获取子单元和请求单元(图中未示出)。
其中,获取子单元,用于通过NPAPI接口获取移动终端的浏览器当前运行的上下文(Context);
请求单元,用于利用所述上下文向移动终端操作系统发起调用所述第二引擎模块的内核单元的请求,使得所述移动终端操作系统接收请求后调用所述内核单元。
本发明技术方案中,通过插件单元(X-Canvas插件),可以把第二引擎模块(加速引擎)做成一个插件的形式,在浏览器上以一个浏览器插件形式存在,可以直接安装在手机中,这样就可以使游戏引擎中的游戏直接在手机浏览器上运行。
图3是本发明实施例的游戏引擎中的第二引擎模块的内核单元的结构示意图。
如图3所示,第二引擎模块的内核单元包括对象单元和接口单元。
其中,对象单元,用于为所述第一引擎模块执行所述游戏框架模块中的游戏程序脚本提供扩展的定义对象,为所述游戏框架模块中的游戏程序脚本提供HTML5运行环境;
接口单元,用于为所述第一引擎模块执行所述游戏框架模块中的游戏程序脚本提供扩展的API接口。
进一步的,对象单元包括:缓存(ApplicationCache)子单元、本地存储(LocalStorage)子单元、Cookie子单元、XHR(XMLHttpReuequest)子单元、画布(Canvas)子单元、音频(Audio)子单元、Window子单元、WebSocket子单元。其中画布(Canvas)子单元为必选单元,其他为可选单元。
其中,画布子单元,用于为所述第一引擎模块提供可调用的Canvas对象,实现HTML5的画布功能。例如Canvas对象中的fillRect,用于在屏幕上面填充矩形,Canvas对象中的strokeRect,用于在屏幕上面画矩形。画布子单元支持多个Canvas绘图。多个Canvas对象的层叠关系根据创建顺序来定,后创建的覆盖在先创建的Canvas对象之上。
WebSocket子单元,用于为所述第一引擎模块提供可调用的WebSocket对象,按HTML5标准实现与服务器的通信。
XHR子单元,用于为所述第一引擎模块提供可调用的XHR对象,实现本地和网络数据的读取。例如XHR对象中的onreadystatechange,用于指定当readyState属性改变时的事件处理函数,XHR对象中的readyState,用于返回当前请求的状态。
音频子单元,用于为所述第一引擎模块提供可调用的Audio对象,实现音频处理。例如Audio对象中的Load,用于预加载音频,Audio对象中的src,用于设置音频文件路径。
本地存储子单元,用于为所述第一引擎模块提供可调用的LocalStorage对象,实现按照域名存储数据。例如LocalStorage对象中的key,是key-value对的key索引。
Cookie子单元,用于为所述第一引擎模块提供可调用的Cookie对象,实现按照域名存储Cookie信息。Cookie对象具备自动过期功能和在XHR请求的时候会自动带上本地cookie信息。
缓存子单元,用于为所述第一引擎模块提供可调用的ApplicationCache对象,实现存储缓存文件。
Window子单元,用于为所述第一引擎模块提供可调用的Window对象,兼容浏览器的一些接口和调用本地的某些对象或方法。
其中,在所述缓存子单元中,是以主机域名和端口号,或者以地址和端口号组成的域来决定唯一的主机目录,所述主机目录存放该域下涉及到的app cache文件及普通的缓存文件,且以manifest文件的URL为标志来决定一个app cache文件的存储空间,即appcache目录。其子目录cache文件目录存放manifest中描述需要进行本地缓存的文件,即manifest文件中cache字段下所列举的文件。app cache目录下还包含app cache index文件,其主要是管理app cache文件目录下的文件。
进一步的,接口单元包括以下的一个或多个接口:OpenGLES接口、媒体播放(MediaPlayer)接口、套接字(Socekt)接口、文本存储(File System)接口。
OpenGLES接口,用于提供接口实现图形渲染,被所述Canvas子单元进行封装实现对渲染性能的加速;
媒体播放接口,用于提供接口实现音频播放;
套接字接口,用于提供接口实现网络请求;
文本存储接口,用于提供接口实现数据存储。
结合上述描述的结构,其中,画布子单元创建Canvas对象,其中每个Canvas对象维护有画图列表,所述画图列表里面的对象对应屏幕上的元素,所述OpenGLES接口的缓冲区接收所述Canvas对象维护的画图列表中的元素的填充,再通过GLSurfaceView视图显示渲染的图像。其中,GLSurfaceView是一个视图,用于OpenGLES的渲染。
从上述技术方案可以看出,本发明提供的游戏引擎(即X-Canvas游戏引擎)是遵循W3C的HTML5标准接口,在游戏引擎中,通过新增的第二引擎模块为第一引擎模块提供扩展的定义对象和扩展的API接口,并为游戏程序脚本提供HTML5运行环境,使得在第一引擎模块在游戏程序脚本的执行过程中可以调用第二引擎模块提供的定义对象和API接口,从而克服现有技术的游戏引擎各自封装一套API接口而不兼容的缺陷,实现屏蔽平台差异性,方便游戏开发者在手机平台上开发游戏,降低了开发手机游戏的门槛,为开发手机游戏提供了一套完整的手机游戏平台解决方案。而且,该游戏引擎不仅可以运行在PC浏览器上,也可以在手机浏览器上面运行、打包成客户端进行发布,并且可以跨Andorid、IOS平台使用。另外,该游戏引擎采用系统的GPU进行加速,大大地提高了游戏的体验。
本领域技术人员将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现所述的功能,但是这种实现决定不应被解释为导致脱离本发明的范围。
尽管前面公开的内容示出了本发明的示例性实施例,但是应当注意,在不背离权利要求限定的本发明的范围的前提下,可以进行多种改变和修改。根据这里描述的发明实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明的元素可以以个体形式描述或要求,但是也可以设想多个,除非明确限制为单数。
虽然如上参照图描述了根据本发明的各个实施例进行了描述,但是本领域技术人员应当理解,对上述本发明所提出的各个实施例,还可以在不脱离本发明内容的基础上做出各种改进。因此,本发明的保护范围应当由所附的权利要求书的内容确定。

Claims (8)

1.一种游戏引擎,包括:
游戏框架模块、第二引擎模块、位于游戏框架模块和第二引擎模块之间的第一引擎模块,
所述游戏框架模块用于存储游戏程序脚本,
所述第二引擎模块用于为第一引擎模块提供扩展的定义对象和扩展的API接口,为游戏框架模块中的游戏程序脚本提供HTML5运行环境,
所述第一引擎模块用于加载、解析并执行所述游戏框架模块中的游戏程序脚本,在执行过程中调用所述第二引擎模块提供的定义对象和API接口;
所述第二引擎模块包含插件单元和内核单元,
所述插件单元用于在通过NPAPI接口获取移动终端的浏览器的指令后,调用所述内核单元,
所述内核单元用于在被所述插件单元调用后,为所述第一引擎模块执行所述游戏框架模块中的游戏程序脚本提供扩展的定义对象和扩展的API接口,为所述游戏框架模块中的游戏程序脚本提供HTML5运行环境;
所述内核单元包括对象单元,所述对象单元,用于为所述第一引擎模块执行所述游戏框架模块中的游戏程序脚本提供扩展的定义对象,为所述游戏框架模块中的游戏程序脚本提供HTML5运行环境;
所述内核单元包括接口单元,所述接口单元用于为所述第一引擎模块执行所述游戏框架模块中的游戏程序脚本提供扩展的API接口;
所述对象单元包括缓存子单元,在所述缓存子单元中,以主机域名和端口号,或者以地址和端口号组成的域来决定唯一的主机目录,所述主机目录存放该域下涉及到的appcache文件及普通的缓存文件,且以manifest文件的URL为标志来决定一个app cache文件的存储空间;所述app cache文件的存储空间是app cache目录,该app cache目录下还包含app cache index文件,其管理app cache目录下的文件;
所述对象单元包括画布子单元,用于为所述第一引擎模块提供可调用的Canvas对象,实现HTML5的画布功能;
所述接口单元包括OpenGLES接口,用于提供接口实现图形渲染,被所述画布子单元进行封装实现对渲染性能的加速;
所述画布子单元创建Canvas对象,其中每个Canvas对象维护有画图列表,所述画图列表里面的对象对应屏幕上的元素;所述OpenGLES接口的缓冲区接收所述Canvas对象维护的画图列表中的元素的填充,再通过GLSurfaceView视图显示渲染的图像。
2.根据权利要求1所述的游戏引擎,其中,所述第二引擎模块通过NPAPI接口和移动终端的浏览器进行交互。
3.根据权利要求1所述的游戏引擎,其中,所述第二引擎模块还包含包壳单元,
所述包壳单元用于利用所述内核单元的设置,提供将所述第二引擎模块打包成客户端形式供内容提供商使用的功能。
4.根据权利要求3所述的游戏引擎,其中,所述第二引擎模块的内核单元的对象单元包括:
WebSocket子单元,用于为所述第一引擎模块提供可调用的WebSocket对象,按HTML5标准实现与服务器的通信。
5.根据权利要求4所述的游戏引擎,其中,所述第二引擎模块的内核单元的对象单元还包括以下的一个或多个子单元:
XHR子单元,用于为所述第一引擎模块提供可调用的XHR对象,实现本地和网络数据的读取;
音频子单元,用于为所述第一引擎模块提供可调用的Audio对象,实现音频处理;
本地存储子单元,用于为所述第一引擎模块提供可调用的LocalStorage对象,实现按照域名存储数据;
Cookie子单元,用于为所述第一引擎模块提供可调用的Cookie对象,实现按照域名存储Cookie信息。
6.根据权利要求4所述的游戏引擎,其中,所述第二引擎模块的内核单元的接口单元包括以下的一个或多个接口:
媒体播放接口,用于提供接口实现音频播放;
套接字接口,用于提供接口实现网络请求;
文本存储接口,用于提供接口实现数据存储。
7.根据权利要求3所述的游戏引擎,其中,所述第二引擎模块的插件单元包括:
获取子单元,用于通过NPAPI接口获取移动终端的浏览器当前运行的上下文;
请求单元,用于利用所述上下文向移动终端操作系统发起调用所述第二引擎模块的内核单元的请求,使得所述移动终端操作系统接收请求后调用所述内核单元。
8.根据权利要求3至7任一项所述的游戏引擎,其中:
所述游戏框架模块具体为JS游戏框架,所述第二引擎模块具体为加速引擎,所述第一引擎模块具体为JS引擎,
所述第二引擎模块中的内核单元具体为X-Canvas内核,所述包壳单元具体为X-Canvas包壳,所述插件单元具体为X-Canvas插件。
CN201610811025.9A 2013-07-30 2013-07-30 一种游戏引擎 Active CN106445508B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610811025.9A CN106445508B (zh) 2013-07-30 2013-07-30 一种游戏引擎

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610811025.9A CN106445508B (zh) 2013-07-30 2013-07-30 一种游戏引擎
CN201310324724.7A CN103425491B (zh) 2013-07-30 2013-07-30 一种游戏引擎

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201310324724.7A Division CN103425491B (zh) 2013-07-30 2013-07-30 一种游戏引擎

Publications (2)

Publication Number Publication Date
CN106445508A CN106445508A (zh) 2017-02-22
CN106445508B true CN106445508B (zh) 2020-07-14

Family

ID=49650285

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201610811025.9A Active CN106445508B (zh) 2013-07-30 2013-07-30 一种游戏引擎
CN201310324724.7A Active CN103425491B (zh) 2013-07-30 2013-07-30 一种游戏引擎

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201310324724.7A Active CN103425491B (zh) 2013-07-30 2013-07-30 一种游戏引擎

Country Status (1)

Country Link
CN (2) CN106445508B (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679489A (zh) * 2013-12-02 2015-06-03 厦门极致互动网络技术有限公司 一种在网络游戏客户端中内置网络浏览器的系统及方法
CN104360840A (zh) * 2014-10-20 2015-02-18 广州精攻网络科技有限公司 一种基于html5的游戏开发方法及装置
CN104866335B (zh) * 2014-12-30 2018-04-13 北京白鹭时代信息技术有限公司 一种移动终端基于Egret Runtime运行游戏的方法及装置
CN104765604A (zh) * 2015-03-20 2015-07-08 福建天晴数码有限公司 Dx渲染引擎嵌入到另一dx渲染引擎的方法和装置
CN105354052B (zh) * 2015-09-30 2018-12-04 北京奇虎科技有限公司 flash游戏加载方法和装置
CN107291427B (zh) * 2016-03-30 2020-10-27 博雅网络游戏开发(深圳)有限公司 游戏引擎的优化方法、装置和系统
CN105955833B (zh) * 2016-06-06 2021-09-21 腾讯科技(深圳)有限公司 引擎调用方法和装置
CN106203144A (zh) * 2016-07-25 2016-12-07 飞天诚信科技股份有限公司 一种实现浏览器访问智能密钥设备的方法及系统
CN106293084A (zh) * 2016-08-06 2017-01-04 深圳市爱康伟业智能科技有限公司 一种移动客户端体感游戏生成方法
CN106325866B (zh) * 2016-08-22 2019-09-20 网易(杭州)网络有限公司 跨引擎调用方法及装置
CN106445530B (zh) * 2016-09-27 2020-04-07 北京奇虎科技有限公司 一种将客户端应用软件转换为网页软件的方法、装置
CN107423049A (zh) * 2017-04-18 2017-12-01 南京凯蒙教育科技有限公司 实现在线编程的方法、浏览器和终端设备
CN107508853A (zh) * 2017-07-11 2017-12-22 北京数字医视文化传媒有限公司 一种移动app开发的架构方法及系统
CN107566346B (zh) * 2017-08-10 2020-08-11 腾讯科技(深圳)有限公司 3d游戏数据的传输方法、装置以及存储介质、电子装置
CN109271155A (zh) * 2018-09-11 2019-01-25 Oppo广东移动通信有限公司 游戏平台的能力调用方法及相关产品
CN109254793B (zh) * 2018-09-20 2022-02-15 Oppo广东移动通信有限公司 引擎隔离方法、相关设备以及计算机可读存储介质
CN109271156B (zh) * 2018-09-25 2022-02-18 Oppo广东移动通信有限公司 游戏平台的底层调用方法及相关产品
CN111198682B (zh) * 2018-11-19 2023-06-09 上海宜奇信息科技有限公司 一种电视游戏类应用软件开发引擎和实现方法
CN111414150B (zh) * 2019-01-04 2022-10-11 厦门雅基软件有限公司 游戏引擎渲染方法、装置、电子设备及计算机存储介质
CN109918057A (zh) * 2019-03-18 2019-06-21 北京智明星通科技股份有限公司 基于html5的游戏创建方法及装置
CN112102688A (zh) * 2019-06-17 2020-12-18 北京张善风文化传播有限公司 0至12岁家庭心游会教育系统及其教育方法
CN111813969A (zh) * 2019-11-08 2020-10-23 厦门雅基软件有限公司 多媒体数据处理方法、装置、电子设备及计算机存储介质
CN111124383A (zh) * 2019-12-20 2020-05-08 阿哈王国(武汉)教育科技有限公司 一种使用Python语言进行在线项目创作的方法
CN112102050A (zh) * 2020-02-10 2020-12-18 云池网络科技(上海)有限公司 物联网卡平台财务管理系统
CN111359219B (zh) * 2020-03-16 2023-09-26 网易(杭州)网络有限公司 虚幻引擎的文件处理方法、装置、设备及存储介质
CN113448557B (zh) * 2021-06-30 2022-06-17 深圳淘乐网络科技有限公司 一种基于html5的游戏开发方法
CN113656115B (zh) * 2021-07-27 2023-10-27 厦门雅基软件有限公司 接口调用系统、方法及电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102254079A (zh) * 2010-05-17 2011-11-23 张静盛 开放式的游戏内置平台

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102469065B (zh) * 2010-11-02 2015-03-25 腾讯科技(深圳)有限公司 一种与html5浏览器互通数据的方法及系统
US20120246554A1 (en) * 2011-03-23 2012-09-27 Ericom Software Ltd. Performing binary composition of images onto an html canvas element
CN102937968B (zh) * 2012-10-11 2015-10-14 上海交通大学 一种基于Canvas的双目3D网页实现方法及系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102254079A (zh) * 2010-05-17 2011-11-23 张静盛 开放式的游戏内置平台

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
真正实现一次开发,跨平台运行——解构HTML5游戏引擎X-Canvas;陈粲然;《http://www.pingwest.com/x-canvas/》;20130311;第1-4页 *

Also Published As

Publication number Publication date
CN103425491B (zh) 2016-10-12
CN106445508A (zh) 2017-02-22
CN103425491A (zh) 2013-12-04

Similar Documents

Publication Publication Date Title
CN106445508B (zh) 一种游戏引擎
US20210326397A1 (en) Systems and Methods for Hosted Applications
US10303748B2 (en) Method and device for providing webpage browsing based on web browser engine kernel
Taivalsaari et al. Web browser as an application platform
CN109697060B (zh) 视频特效系统及其生成方法、装置、设备和存储介质
CN108984174B (zh) 跨平台的应用创建方法、装置、服务器和存储介质
US8683319B2 (en) Shared script files in multi-tab browser
US9471704B2 (en) Shared script files in multi-tab browser
US10747510B1 (en) Application runtime modification
US9178746B2 (en) Browser-based fetch of external libraries
US20140046649A1 (en) Isa bridging including support for call to overidding virtual functions
KR101416104B1 (ko) 하이브리드 웹 어플리케이션의 네이티브 기능을 수행하는 자바스크립트 코드의 동적 로딩 장치와 방법
KR101691063B1 (ko) 콜백을 이용하는 isa 브리징
CN114077423A (zh) 基于移动跨平台的机场app开发容器架构
CN104731598B (zh) 一种基于Webkit内核提供网页浏览的方法及装置
US8443292B2 (en) Scripting application with privacy mode coordination
CN111971655A (zh) 用于超文本标记语言图形内容的本机运行时技术
US9146720B1 (en) Binary file application processing
EP2721494B1 (en) System and method to in-line script dependencies
Manas et al. Android high performance programming
CN113760735A (zh) 应用调试方法、装置、计算机系统和计算机可读存储介质
Li et al. Design and Implementation of API Automation Testing System for Mobile Hybrid Mode Based on Appium Technology
CN117193769A (zh) 页面渲染方法及装置、电子设备和计算机可读存储介质
CN118152044A (zh) 非根权限挂钩Java方法的方法与装置
Xu et al. B2GPAPI: an Efficient Framework Providing C/C++ Runtime in Web-based OS

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20200601

Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Applicant after: Alibaba (China) Co.,Ltd.

Address before: 510627 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping radio square B tower 13 floor 02 unit self

Applicant before: GUANGZHOU UCWEB COMPUTER TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20210520

Address after: Room 1267, building e, 555 Dongchuan Road, Minhang District, Shanghai 200241

Patentee after: Shanghai Heping Network Technology Co.,Ltd.

Address before: 310052 room 508, 5th floor, building 4, No. 699 Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee before: Alibaba (China) Co.,Ltd.

TR01 Transfer of patent right