游戏热更新方法、装置和存储介质制造方法及图纸

技术编号:21431513 阅读:16 留言:0更新日期:2019-06-22 11:43
本发明专利技术实施例提供一种游戏热更新方法、装置和存储介质,该方法包括:获取第一数据模板,第一数据模板为需要进行热更新的第一游戏功能组件对应的二进制格式的数据模板,获取第一游戏功能组件对应的第一框架预制体,根据第一数据模板和第一框架预制体,获取第一游戏功能组件,加载第一游戏功能组件对游戏进行热更新。因此,在进行游戏热更新时,无需引入iOS平台不支持的脚本资源和操作,采用的数据模板和框架预制体均采用Unity3d官方推荐的C#语言编写,保持了Unity3d采用C#开发的性能优势,能够适用于Android和iOS平台,提升了用户体验。

【技术实现步骤摘要】
游戏热更新方法、装置和存储介质
本专利技术涉及计算机
,尤其涉及一种游戏中游戏热更新方法、装置和存储介质。
技术介绍
Unity3d作为一种常用的游戏引擎,越来越多的游戏厂商和开发者选择使用Unity3d引擎开发手机游戏,为了缩短用户获取客户端新版内容的流程和缩短手机游戏通过APPStore审核的时间,增加Unity3d手机游戏的热更新功能是Unity3d手机游戏开发的关键。一种游戏热更新方案中,使用Lua插件实现游戏热更新,将需要热更新的游戏功能使用Lua脚本编写,再将Lua脚本文件打包成AssetBundle资源,客户端更新时下载Lua脚本资源,加载Lua脚本并执行Lua代码,实现热更新;或者使用动态链接库文件(DynamicLinkLibrary,DLL)实现游戏热更新,将需要热更新的游戏功能编译成DLL,再将DLL文件打包成AssetBundle资源,客户端更新时下载DLL文件资源,游戏运行时加载DLL文件并使用反射机制来执行DLL,达到热更新目的。然而,由于iOS平台禁止在应用中使用Lua脚本的功能,使用Lua插件来实现Unity3d的热更新违背了iOS的规定,具有一定的被禁用的风险,并且由于iOS平台禁止了C#的部分反射操作,因此无法在iOS平台上使用DLL实现游戏热更新。
技术实现思路
本专利技术提供一种游戏热更新方法、装置和存储介质,用于改进现有游戏热更新方案不适用于iOS平台的问题。本专利技术第一方面提供一种游戏热更新方法,包括:获取第一数据模板,所述第一数据模板为需要进行热更新的第一游戏功能组件对应的二进制格式的数据模板;获取所述第一游戏功能组件对应的第一框架预制体;根据所述第一数据模板和所述第一框架预制体,获取所述第一游戏功能组件;加载所述第一游戏功能组件对所述游戏进行热更新。可选的,所述方法包括:从预设服务器获取所述第一游戏功能组件对应的逻辑执行指示数据;将所述逻辑执行指示数据绑定到所述第一游戏功能组件。可选的,所述方法包括:根据用户输入的常量,设置所述第一游戏功能组件。可选的,所述获取第一数据模板之前,所述方法还包括:接收预设服务器发送的数据模板标识,所述数据模板标识为需要进行热更新的游戏功能组件对应的二进制格式的数据模板的标识;从所述预设服务器获取所述数据模板标识对应的所述数据模板;从所述预设服务器获取所述游戏功能组件对应的框架预制体。可选的,所述从所述服务器获取所述游戏功能组件对应的框架预制体,包括:获取所述游戏功能组件类型;若所述游戏功能组件类型为预设组件类型,从所述服务器获取所述游戏功能组件对应的框架预制体。可选的,所述根据所述第一数据模板和所述第一框架预制体,获取所述第一游戏功能组件,包括:按照预设解析规则,从所述第一数据模板中解析得到所述第一游戏功能组件的布局数据;创建所述第一游戏功能组件的实例对象;根据所述第一游戏功能组件的布局数据、所述第一游戏功能组件的实例对象以及所述第一框架预制体,获取所述第一游戏功能组件。可选的,所述从预设服务器获取所述第一游戏功能组件对应的逻辑执行指示数据,包括:若所述第一游戏功能组件的属性的值的类型为数据表达式,从所述预设服务器获取所述第一游戏功能组件对应的逻辑执行指示数据;相应的,所述将所述逻辑执行指示数据绑定到所述第一游戏功能组件,包括:根据所述逻辑执行指示数据,设置所述第一游戏功能组件的属性的值。可选的,所述根据用户输入的常量,设置所述第一游戏功能组件,包括:若所述第一游戏功能组件的属性的值的类型为常量,将所述用户输入的常量作为所述第一游戏功能组件的属性的值。可选的,所述方法还包括:若所述第一游戏功能组件存在子组件,获取所述第一游戏功能组件的子组件的类型;若所述子组件的类型为预设组件类型,创建所述子组件的实例对象;根据所述第一游戏功能组件的布局数据,确定所述子组件的布局数据;以所述第一游戏功能组件为父节点,根据所述子组件的实例对象、所述子组件的布局数据以及所述第一框架预制体,获取所述子组件。可选的,所述加载所述第一游戏功能组件对所述游戏进行热更新,包括:加载所述第一游戏功能组件和所述子组件对所述游戏进行热更新。本专利技术第二方面提供一种游戏热更新方法,包括:在游戏的客户端成功安装在终端中并启动时,向所述客户端发送数据模板标识,所述数据模板标识为需要进行热更新的游戏功能组件对应的二进制格式的数据模板的标识;根据客户端发送的第一获取请求,将所述数据模板发送给所述客户端;根据所述客户端发送的第二获取请求,将所述游戏功能组件对应的框架预制体发送给所述客户端。可选的,所述方法还包括:根据所述客户端发送的第三获取请求,将第一游戏功能组件对应的逻辑执行指示数据发送给所述客户端。可选的,所述向所述客户端发送数据模板标识之前,所述方法还包括:创建可扩展标记语言(ExtensibleMarkupLanguage,XML)格式的数据模板;根据预设编译规则,将所述XML格式的数据模板编译为二进制格式的数据模板。本专利技术第三方面提供一种客户端,包括:获取模块,用于获取第一数据模板,所述第一数据模板为需要进行热更新的第一游戏功能组件对应的二进制格式的数据模板;所述获取模块,还用于获取所述第一游戏功能组件对应的第一框架预制体;所述获取模块,还用于根据所述第一数据模板和所述第一框架预制体,获取所述第一游戏功能组件;处理模块,用于加载所述第一游戏功能组件对所述游戏进行热更新。本专利技术第四方面提供一种服务器,包括:发送模块,用于在游戏的客户端成功安装在终端中并启动时,向所述客户端发送数据模板标识,所述数据模板标识为需要进行热更新的游戏功能组件对应的二进制格式的数据模板的标识;所述发送模块,还用于根据客户端发送的第一获取请求,将所述数据模板标识对应的所述数据模板发送给所述客户端,所述第一获取请求用于获取所述数据模板标识对应的所述数据模板;所述发送模块,还用于根据所述客户端发送的第二获取请求,将所述游戏功能组件对应的框架预制体发送给所述客户端。本专利技术第五方面提供一种终端,包括:处理器;存储器,用于存储所述处理器的计算机程序;其中,所述处理器被配置为通过执行所述计算机程序来实现第一方面任一实现方式提供的游戏热更新方法。本专利技术第六方面提供一种服务器,包括:处理器;存储器,用于存储所述处理器的计算机程序;其中,所述处理器被配置为通过执行所述计算机程序来实现第二方面任一实现方式提供的游戏热更新方法。本专利技术第七方面提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一实现方式提供的游戏热更新方法。本专利技术第八方面提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第二方面任一实现方式提供的游戏热更新方法。本专利技术实施例提供的游戏热更新方法、装置和存储介质,通过本实施例提供的游戏热更新方法,通过获取第一数据模板,第一数据模板为需要进行热更新的第一游戏功能组件对应的二进制格式的数据模板,获取第一游戏功能组件对应的第一框架预制体,根据第一数据模板和第一框架预制体,获取第一游戏功能组件,加载第一游戏功能组件对游戏进行热更新。因此,在进行游戏热更新时,无需引入iOS平台不支持的脚本资源和操作,本专利技术提供的热更新方案能够适用于A本文档来自技高网...

【技术保护点】
1.一种游戏热更新方法,其特征在于,应用于游戏的客户端,包括:获取第一数据模板,所述第一数据模板为需要进行热更新的第一游戏功能组件对应的二进制格式的数据模板;获取所述第一游戏功能组件对应的第一框架预制体;根据所述第一数据模板和所述第一框架预制体,获取所述第一游戏功能组件;加载所述第一游戏功能组件对所述游戏进行热更新。

【技术特征摘要】
1.一种游戏热更新方法,其特征在于,应用于游戏的客户端,包括:获取第一数据模板,所述第一数据模板为需要进行热更新的第一游戏功能组件对应的二进制格式的数据模板;获取所述第一游戏功能组件对应的第一框架预制体;根据所述第一数据模板和所述第一框架预制体,获取所述第一游戏功能组件;加载所述第一游戏功能组件对所述游戏进行热更新。2.根据权利要求1所述的方法,其特征在于,所述方法包括:从预设服务器获取所述第一游戏功能组件对应的逻辑执行指示数据;将所述逻辑执行指示数据绑定到所述第一游戏功能组件。3.根据权利要求1所述的方法,其特征在于,所述方法包括:根据用户输入的常量,设置所述第一游戏功能组件。4.根据权利要求1所述的方法,其特征在于,所述获取第一数据模板之前,所述方法还包括:接收预设服务器发送的数据模板标识,所述数据模板标识为需要进行热更新的游戏功能组件对应的二进制格式的数据模板的标识;从所述预设服务器获取所述数据模板标识对应的所述数据模板;从所述预设服务器获取所述游戏功能组件对应的框架预制体。5.根据权利要求4所述的方法,其特征在于,所述从所述服务器获取所述游戏功能组件对应的框架预制体,包括:获取所述游戏功能组件类型;若所述游戏功能组件类型为预设组件类型,从所述服务器获取所述游戏功能组件对应的框架预制体。6.根据权利要求1所述的方法,其特征在于,所述根据所述第一数据模板和所述第一框架预制体,获取所述第一游戏功能组件,包括:按照预设解析规则,从所述第一数据模板中解析得到所述第一游戏功能组件的布局数据;创建所述第一游戏功能组件的实例对象;根据所述第一游戏功能组件的布局数据、所述第一游戏功能组件的实例对象以及所述第一框架预制体,获取所述第一游戏功能组件。7.根据权利要求2所述的方法,其特征在于,所述从预设服务器获取所述第一游戏功能组件对应的逻辑执行指示数据,包括:若所述第一游戏功能组件的属性的值的类型为数据表达式,从所述预设服务器获取所述第一游戏功能组件对应的逻辑执行指示数据;相应的,所述将所述逻辑执行指示数据绑定到所述第一游戏功能组件,包括:根据所述逻辑执行指示数据,设置所述第一游戏功能组件的属性的值。8.根据权利要求3所述的方法,其特征在于,所述根据用户输入的常量,设置所述第一游戏功能组件,包括:若所述第一游戏功能组件的属性的值的类型为常量,将所述用户输入的常量作为所述第一游戏功能组件的属性的值。9.根据权利要求6所述的方法,其特征在于,所述方法还包括:若所述第一游戏功能组件存在子组件,获取所述第一游戏功能组件的子组件的类型;若所述子组件的类型为预设组件类型,创建所述子组件的实例对象;根据所述第一游戏功能组件的布局数据,确定所述子组件的布局数据;以所述第一游戏功能组件为父节点,根据所述子组件的实例对象、所述子组件的布局数据以及所述第一框架预制...

【专利技术属性】
技术研发人员:章祥
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1