发明内容
本公开实施例至少提供一种游戏编辑方法、游戏运行方法、装置及计算机设备。
第一方面,本公开实施例提供了一种游戏编辑方法,包括:
响应场景元素添加指令,在游戏场景编辑页面编辑的目标游戏场景中添加与所述场景元素添加指令对应的场景元素;
响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中,以搭建包含至少一个目标逻辑组件的初始逻辑架构;其中,所述至少一个目标逻辑组件用于描述各场景元素在目标游戏中的执行逻辑,包括将多个逻辑组件进行封装后得到的自定义逻辑组件;
响应针对所述初始逻辑架构中目标逻辑组件的第一编辑操作,得到所述目标游戏的目标逻辑架构,以基于所述目标逻辑架构运行所述目标游戏。
一种可能的实施方式中,所述游戏逻辑编辑页面用于对所述目标游戏场景中的各目标场景元素分别进行逻辑编辑;
在响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中之前,所述方法还包括:
响应针对场景元素中的目标场景元素的选中操作,确定当前进行逻辑编辑的目标场景元素。
一种可能的实施方式中,所述响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中,包括:
响应针对所述目标场景元素的逻辑组件添加操作,将与所述逻辑组件添加指令对应的目标逻辑组件添加至,与所述目标场景元素对应的游戏逻辑编辑页面中。
一种可能的实施方式中,所述方法还包括根据以下方法编辑所述游戏场景编辑页面和所述游戏逻辑编辑页面:
响应目标预制体添加指令,在所述游戏场景编辑页面中添加目标预制体中的预制场景元素;以及,在所述游戏逻辑编辑页面中添加与所述预制场景元素对应的预制逻辑组件。
一种可能的实施方式中,所述逻辑组件包括存储组件、触发组件、功能组件以及动作组件,其中:
所述存储组件,用于响应用户的第一赋值操作,存储与所述第一赋值操作对应的数据值;
所述触发组件,用于在所述目标游戏的游戏引擎监听到预设的游戏交互事件后,触发所述触发组件后的其他逻辑组件,以使其他逻辑组件开始依次执行;
所述功能组件,用于实现所述执行逻辑中的目标功能;其中,所述目标功能包括描述逻辑架构中的各逻辑组件之间的关系、判断逻辑组件的输出是否符合预设条件、定义逻辑组件的循环次数;
所述动作组件,用于执行所述执行逻辑中的目标动作;其中,所述目标动作包括对目标场景元素的属性值进行赋值。
一种可能的实施方式中,所述方法还包括根据以下步骤得到所述自定义逻辑组件:
响应封装指令,展示自定义逻辑组件的封装页面;其中,所述封装页面中展示有多个待封装的目标逻辑组件;
响应用户针对所述封装页面中多个目标逻辑组件的选择操作,确定多个第一目标逻辑组件;其中,所述第一目标逻辑组件中包含接出口组件,所述接出口组件用于定义所述自定义逻辑组件的执行开始和输出;
响应用户针对各第一目标逻辑组件的编辑操作,生成所述自定义逻辑组件。
第二方面,本公开实施例提供了一种游戏运行方法,包括:
基于上述第一方面,或第一方面中任一种可能的实施方式中的步骤生成的目标游戏的目标逻辑架构与目标游戏场景,对所述目标游戏的游戏引擎进行初始化;
基于初始化后的游戏引擎,渲染所述目标游戏的游戏画面;
获取游戏引擎发送的交互指令,并基于所述交互指令和所述目标逻辑架构,确定与所述交互指令对应的交互结果;
基于所述交互结果对所述游戏画面进行更新渲染。
一种可能的实施方式中,所述方法包括根据以下方法对所述目标游戏的游戏引擎进行初始化:
基于所述目标游戏场景,在所述游戏引擎中创建与所述目标游戏场景中的场景元素对应的渲染节点;
确定所述渲染节点与所述目标逻辑架构中各逻辑组件的对应关系,以使所述渲染节点能够按照所述逻辑组件对应的输出进行游戏画面渲染。
第三方面,本公开实施例还提供一种游戏编辑装置,包括:
第一添加模块,用于响应场景元素添加指令,在游戏场景编辑页面编辑的目标游戏场景中添加与所述场景元素添加指令对应的场景元素;
第二添加模块,用于响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中,以搭建包含至少一个目标逻辑组件的初始逻辑架构;其中,所述至少一个目标逻辑组件用于描述各场景元素在目标游戏中的执行逻辑,包括将多个逻辑组件进行封装后得到的自定义逻辑组件;
编辑模块,用于响应针对所述初始逻辑架构中目标逻辑组件的第一编辑操作,得到所述目标游戏的目标逻辑架构,以基于所述目标逻辑架构运行所述目标游戏。
一种可能的实施方式中,所述游戏逻辑编辑页面用于对所述目标游戏场景中的各目标场景元素分别进行逻辑编辑;
在响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中之前,所述第二添加模块还用于:
响应针对场景元素中的目标场景元素的选中操作,确定当前进行逻辑编辑的目标场景元素。
一种可能的实施方式中,所述第二添加模块,在响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面时,用于:
响应针对所述目标场景元素的逻辑组件添加操作,将与所述逻辑组件添加指令对应的目标逻辑组件添加至,与所述目标场景元素对应的游戏逻辑编辑页面中。
一种可能的实施方式中,所述编辑模块,还用于根据以下步骤编辑所述游戏场景编辑页面和所述游戏逻辑编辑页面:
响应目标预制体添加指令,在所述游戏场景编辑页面中添加目标预制体中的预制场景元素;以及,在所述游戏逻辑编辑页面中添加与所述预制场景元素对应的预制逻辑组件。
一种可能的实施方式中,所述逻辑组件包括存储组件、触发组件、功能组件以及动作组件,其中:
所述存储组件,用于响应用户的第一赋值操作,存储与所述第一赋值操作对应的数据值;
所述触发组件,用于在所述目标游戏的游戏引擎监听到预设的游戏交互事件后,触发所述触发组件后的其他逻辑组件,以使其他逻辑组件开始依次执行;
所述功能组件,用于实现所述执行逻辑中的目标功能;其中,所述目标功能包括描述逻辑架构中的各逻辑组件之间的关系、判断逻辑组件的输出是否符合预设条件、定义逻辑组件的循环次数;
所述动作组件,用于执行所述执行逻辑中的目标动作;其中,所述目标动作包括对目标场景元素的属性值进行赋值。
一种可能的实施方式中,所述第二添加模块,还用于根据以下步骤得到所述自定义逻辑组件:
响应封装指令,展示自定义逻辑组件的封装页面;其中,所述封装页面中展示有多个待封装的目标逻辑组件;
响应用户针对所述封装页面中多个目标逻辑组件的选择操作,确定多个第一目标逻辑组件;其中,所述第一目标逻辑组件中包含接出口组件,所述接出口组件用于定义所述自定义逻辑组件的执行开始和输出;
响应用户针对各第一目标逻辑组件的编辑操作,生成所述自定义逻辑组件。
第四方面,本公开实施例还提供一种游戏运行装置,包括:
初始化模块,用于基于上述第一方面,或第一方面中任一种可能的实施方式中的步骤生成的目标游戏的目标逻辑架构与目标游戏场景,对所述目标游戏的游戏引擎进行初始化;
渲染模块,用于基于初始化后的游戏引擎,渲染所述目标游戏的游戏画面;
确定模块,用于获取游戏引擎发送的交互指令,并基于所述交互指令和所述目标逻辑架构,确定与所述交互指令对应的交互结果;
更新模块,用于基于所述交互结果对所述游戏画面进行更新渲染。
一种可能的实施方式中,所述初始化模块,用于根据以下步骤对所述目标游戏的游戏引擎进行初始化:
基于所述目标游戏场景,在所述游戏引擎中创建与所述目标游戏场景中的场景元素对应的渲染节点;
确定所述渲染节点与所述目标逻辑架构中各逻辑组件的对应关系,以使所述渲染节点能够按照所述逻辑组件对应的输出进行游戏画面渲染。
第五方面,本公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面或第二方面中,任一种可能的实施方式中的步骤。
第六方面,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面或第二方面中,任一种可能的实施方式中的步骤。
本公开实施例提供的游戏编辑方法、游戏运行方法、装置及计算机设备,通过响应场景元素添加指令,在游戏场景编辑页面编辑的目标游戏场景中添加与所述场景元素添加指令对应的场景元素;使用将多个逻辑组件进行封装后得到的自定义逻辑组件进行游戏逻辑编辑,以搭建初始逻辑架构;并通过对所述初始逻辑架构的第一编辑操作得到所述目标游戏的目标逻辑架构,以基于所述目标逻辑架构运行所述目标游戏。这样,通过使用自定义逻辑组件进行游戏逻辑编辑,可以帮助开发人员快速的对重复或相似的游戏场景进行开发,节约游戏开发过程中的人力成本和时间成本,从而提高游戏开发效率。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
经研究发现,在不同中小型游戏的开发过程中,开发人员经常需要对重复或相似的场景进行编辑,而现有的游戏编辑平台往往只针对单个游戏进行编辑,因此无法提供针对重复或相似场景的复用服务,从而需要花费大量的人力资源进行重复的开发,提高了游戏开发过程中的人力成本和时间成本。
基于上述研究,本公开提供了一种游戏编辑方法、游戏运行方法、装置及计算机设备,通过响应场景元素添加指令,在游戏场景编辑页面编辑的目标游戏场景中添加与所述场景元素添加指令对应的场景元素;使用将多个逻辑组件进行封装后得到的自定义逻辑组件进行游戏逻辑编辑,以搭建初始逻辑架构;并通过对所述初始逻辑架构的第一编辑操作得到所述目标游戏的目标逻辑架构,以基于所述目标逻辑架构运行所述目标游戏。这样,通过使用自定义逻辑组件进行游戏逻辑编辑,可以帮助开发人员快速的对重复或相似的游戏场景进行开发,节约游戏开发过程中的人力成本和时间成本,从而提高游戏开发效率。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种游戏编辑方法进行详细介绍,本公开实施例所提供的游戏编辑方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或服务器或其它处理设备,所述终端设备可以为带有显示功能的智能终端设备,例如,可以为智能手机、平板电脑、智能穿戴设备等。在一些可能的实现方式中,该游戏编辑方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
参见图1所示,为本公开实施例提供的游戏编辑方法的流程图,所述方法包括步骤S101~S103,其中:
S101:响应场景元素添加指令,在游戏场景编辑页面编辑的目标游戏场景中添加与所述场景元素添加指令对应的场景元素。
S102:响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中,以搭建包含至少一个目标逻辑组件的初始逻辑架构;其中,所述至少一个目标逻辑组件用于描述各场景元素在目标游戏中的执行逻辑,包括将多个逻辑组件进行封装后得到的自定义逻辑组件。
S103:响应针对所述初始逻辑架构中目标逻辑组件的第一编辑操作,得到所述目标游戏的目标逻辑架构,以基于所述目标逻辑架构运行所述目标游戏。
以下是对上述步骤的详细介绍。
针对S101,所述场景元素可以是场景中的人、物体等,以目标游戏场景为餐厅为例,则该游戏场景下的场景元素可以是顾客、服务员、餐桌等。
示例性的,所述游戏场景编辑页面的示意图可以如图2所示,图2中,第一显示区域的展示内容为游戏场景编辑页面,可以响应在所述第一显示区域中的编辑操作,对所述第一显示区域中展示的各场景元素进行编辑(比如调整位置等),从而得到编辑完成的目标游戏场景;第二显示区域的展示内容为各场景元素的导览页面,可以响应在所述第二显示区域的场景元素添加指令,在所述第一显示区域中的游戏场景编辑页面中添加对应的场景元素,比如可以响应用户针对所述第二显示区域中任一场景元素的标识信息的拖拽操作(单击后移动至所述游戏场景编辑页面中的目标位置处),在所述目标位置处展示该场景元素;第三显示区域的展示内容为目标游戏的至少一个游戏场景和至少一个场景元素,可以响应用户针对所述第三显示区域中任一游戏场景或任一场景元素的编辑操作,对所述目标游戏的场景和场景元素进行编辑,比如对场景元素的删除、添加等;第四显示区域的展示内容为游戏场景中场景元素的属性值,比如游戏背景图片的尺寸信息等;第五显示区域的展示内容为所述游戏编辑平台的工具导航栏,所述工具导航栏中可以展示所述游戏编辑平台提供的各种功能对应的功能按钮,比如打开文件按钮、保存文件按钮、游戏效果预览按钮、发布游戏按钮、启动游戏场景编辑模式按钮、启动游戏逻辑编辑模式按钮等,可以通过响应针对所述启动游戏场景编辑模式按钮,或所述启动游戏逻辑编辑模式按钮的触发操作,实现从游戏场景编辑与游戏逻辑编辑之间的转换。
这样,通过响应场景元素添加指令和相应的编辑操作,可以在所述游戏场景编辑页面中完成对目标游戏场景的搭建。
S102:响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中,以搭建包含至少一个目标逻辑组件的初始逻辑架构;其中,所述至少一个目标逻辑组件用于描述各场景元素在目标游戏中的执行逻辑,包括将多个逻辑组件进行封装后得到的自定义逻辑组件。
这里,所述游戏逻辑编辑页面可以用于对所述目标游戏场景中的各目标场景元素分别进行逻辑编辑,搭建的逻辑架构例如可以是逻辑蓝图等。
示例性的,所述游戏逻辑编辑页面的示意图也可以如图2所示,图2中,第一显示区域的展示内容可以为游戏逻辑编辑页面,所述逻辑编辑页面可以展示包含逻辑组件的架构;第二显示区域的展示内容为各逻辑组件的导览页面,可以响应在所述第二显示区域的逻辑组件添加指令,在所述第一显示区域中的游戏逻辑编辑页面中添加对应的目标逻辑组件;第三显示区域的展示内容为目标游戏的至少一个游戏场景和至少一个场景元素,在将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中之前,可以响应用户针对所述第三显示区域中目标场景元素的选中操作,确定当前进行逻辑编辑的目标场景元素;第四显示区域的展示内容为所述架构中各逻辑组件的属性值,比如游戏奖励分数的数值大小;第五显示区域的展示内容为所述游戏编辑平台的工具导航栏。
实际应用中,根据不同的开发用途,可以将所述逻辑组件分为以下类型:
组件类型1、存储组件。
这里,所述存储组件可用于响应用户的第一赋值操作,存储与所述第一赋值操作对应的数据值。
具体的,可以响应用户在游戏逻辑编辑页面中目标逻辑组件的第一赋值操作,将赋予所述目标逻辑组件的数值添加至数据库对应字段处,该组件有输入无输出,也即根据架构执行到存储组件之后,后续无其他逻辑组件的执行过程。
示例性的,以所述第一赋值操作为将通关所述目标游戏的游戏奖励分数设置为100分为例,可以响应所述第一赋值操作,将数据库中与所述游戏奖励分数对应的字段的属性值更新为100。
示例性的,所述存储组件的在逻辑蓝图中的示意图可以如图3a所示,图3a中的存储组件,上方展示有存储组件的存储数据类型,下方展示有存储组件的数据名称,所示存储数据类型和数据名称均可被用户编辑。
组件类型2、触发组件。
这里,所述触发组件可用于在所述目标游戏的游戏引擎监听到预设的游戏交互事件后,触发所述触发组件后的其他逻辑组件,以使其他逻辑组件开始依次执行,该组件在架构中可以无输入有输出,也即触发组件可以是架构中执行的起点,用于被触发后开始依次执行后续的逻辑组件。
具体的,所述预设的游戏交互事件可以是针对所述目标游戏中场景元素的交互事件,所述交互事件可以是拖拽、单击、双击等。
示例性的,所述触发组件在逻辑蓝图中的示意图可以如图3b所示,图3b中,游戏交互事件为节点“胡萝卜”被拖拽,拖拽位置处、拖拽开始是、拖拽持续时以及拖拽结束后分别执行何种游戏处理操作,可以依次根据触发组件“拖拽位置”、“开始”、“持续”、“结束”处后续连接的逻辑组件进行判断。
组件类型3、功能组件。
这里,所述功能组件可以用于实现所述执行逻辑中的目标功能,该组件可以有输入有输出,也即该组件可以位于架构中逻辑执行链路中间的任意位置处。
具体的,所述目标功能包括描述逻辑架构中的各逻辑组件之间的关系、判断逻辑组件的输出是否符合预设条件、定义逻辑组件的循环次数。
示例性的,所述触发组件在逻辑蓝图中的示意图可以如图3c所示,图3c中,功能组件的目标功能为进行属性值比较,用于判断属性1“选题1的选题”是否等于属性2“题目的答案”。
组件类型4、动作组件。
这里,所述动作组件可用于执行所述执行逻辑中的目标动作,该组件有唯一的输入,可以有多个输出,从而可以根据需求执行后续设置的不同的逻辑。
具体的,所述目标动作包括对目标场景元素的属性值进行赋值等。
示例性的,所述动作组件在逻辑蓝图中的示意图可以如图3d所示,图3d中,动作组件的目标动作为将属性2“选择正确”赋值给属性1“选择结果”。
需要说明的是,各逻辑组件均为将相应的执行代码进行封装后得到的,因此逻辑组件可以理解为执行代码的可视化展示形式,通过所述逻辑组件进行游戏逻辑编辑的过程本质上就是在对相应的执行代码进行编辑,而通过可视化的开发方式可以降低开发人员的代码理解成本,从而提高游戏开发效率。
一种可能的实施方式中,在将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中时,可以响应针对所述目标场景元素的逻辑组件添加操作,将与所述逻辑组件添加指令对应的目标逻辑组件添加至,与所述目标场景元素对应的游戏逻辑编辑页面中。
这里,各场景元素之间往往是关联关系的,可以响应用户的节点编辑操作,构建出场景节点树,所述场景节点树中的各节点可以是场景元素或者设置的特定分组,各节点之间的父子关系即可表征各场景元素的关联关系。
示例性的,可以响应用户的节点编辑操作,将游戏场景中的人物1、人物2、人物3设置为一组,该分组的父节点可以为“人物”节点,该分组的子节点即为场景元素“人物1”、“人物2”、“人物3”,各场景元素之间的关联关系即为同属一组的并列关系。
实际应用中,在进行游戏逻辑编辑时,可以选中所述场景节点树中的根节点,并对所述根节点对应的游戏逻辑编辑页面进行编辑,从而可以使得在逻辑编辑时可以调用更多的节点(也即场景元素);或者,也可以针对所述场景节点树中的多个节点分别对应的游戏逻辑编辑页面进行编辑,从而可以实现较为复杂的游戏机制,从而可以提高用户的游戏体验,本公开实施例对此不做限定。
下面,将分别介绍本公开实施例所提供的游戏编辑方法中,对游戏场景编辑页面,和/或对所述游戏逻辑编辑页面进行快速编辑的方式。
编辑方式1、通过添加预制体进行游戏场景编辑页面和游戏逻辑编辑页面的快速编辑。
这里,可以响应目标预制体添加指令,在所述游戏场景编辑页面中添加目标预制体中的预制场景元素;以及,在所述游戏逻辑编辑页面中添加与所述预制场景元素对应的预制逻辑组件。
具体的,预制体包括了所述场景节点树中的一个节点,以及对该节点进行游戏逻辑编辑之后得到的逻辑架构,通过预制体的复用,可以实现对相似游戏场景的快速编辑,从而可以提高游戏开发效率。
一种可能的实施方式中,如图4所示,可以通过以下步骤得到所述预制体:
S401:响应针对场景节点树中目标节点的触发操作,确定需要构建预制体的预制场景元素。
S402:基于所述预制场景元素,以及所述目标节点经过游戏逻辑编辑后得到的蓝图,生成与所述目标节点对应的预制体。
具体的,在生成与所述目标节点对应的预制体之后,可以响应用户的预制体保存操作,将生成的预制体添加至目标存储区域(比如可以是图2中的第二显示区域)中,以便于后续通过针对所述目标存储区域的触发操作,快速的调用预制体进行游戏编辑。
示例性的,预制体的制作和复用的示意图可以如图3e所示,图3e中,依次进行场景编辑和逻辑编辑生成预制体,并将生成的预制体添加至预制体资源库中,在使用预制体时可以从预制体资源库中获取预制体并进行复用。
编辑方式2、通过添加自定义逻辑组件进行游戏逻辑编辑页面的快速编辑。
这里,所述自定义逻辑组件即为用户自定义的逻辑组件,其所述包含的逻辑组件可以是数据库中已有的各种逻辑组件。
一种可能的实施方式中,如图5所示,可以通过以下步骤得到所述自定义逻辑组件:
S501:响应封装指令,展示自定义逻辑组件的封装页面;其中,所述封装页面中展示有多个待封装的目标逻辑组件。
S502:响应用户针对所述封装页面中多个目标逻辑组件的选择操作,确定多个第一目标逻辑组件;其中,所述第一目标逻辑组件中包含接出口组件,所述接出口组件用于定义所述自定义逻辑组件的执行开始和输出。
S503:响应用户针对各第一目标逻辑组件的编辑操作,生成所述自定义逻辑组件。
示例性的,所述自定义逻辑组件的封装页面的示意图可以如图6所示,图6中,当前的封装页面的编辑区域(中间区域)中展示有接出口组件“接入开始”,可用于定义所述自定义逻辑组件的执行开始;当前封装页面的各逻辑组件的导览页面(下方区域)中展示有数据库中已有的逻辑组件“存储组件”、“触发组件”、“功能组件”、“动作组件”,以及“接出口组件”;通过响应用户针对所述封装页面中多个目标逻辑组件的选择操作,即可确定多个第一目标逻辑组件,并在所述封装页面的编辑区域中添加所述第一目标逻辑组件,然后通过响应用户针对各第一目标逻辑组件的编辑操作,即可生成所述自定义逻辑组件。
示例性的,所述自定义逻辑组件在封装前的逻辑链路可以如图7a所示,图7a中,在接入开始后,先进行了功能组件的属性值判断,在等于可能结果1的情况下,通过接出口组件定义了接出口名称(即第一个可能的输出)为“可能结果1”;在不等于可能结果1的情况下,继续进行功能组件的属性值判断,在等于可能结果2的情况下,通过接出口组件定义了接出口名称(即第二个可能的输出)为“可能结果2”;在不等于可能结果2的情况下,继续进行功能组件的属性值判断,在等于可能结果3的情况下,通过接出口组件定义了接出口名称(即第三个可能的输出)为“可能结果3”;在不等于可能结果3的情况下,通过接出口组件定义了接出口名称(即第四个可能的输出)为“均不匹配”。
示例性的,所述自定义逻辑组件在封装后的展示效果可以如图7b所示,图7b中,自定义逻辑组件中可编辑为属性为“输入值”、“可能结果1”、“可能结果2”、“可能结果3”,可以响应用户针对所述自定义逻辑组件中可编辑的属性的编辑操作,完成对目标游戏的逻辑编辑。
示例性的,自定义逻辑组件的制作和复用的示意图可以如图7c所示,图7c中,进行蓝图逻辑编辑可以生成自定义逻辑组件,生成的自定义逻辑组件也可以直接用于进行蓝图逻辑编辑;此外,还可以将生成的自定义逻辑组件添加至自定义逻辑组件模板库中,在使用自定义逻辑组件时可以从自定义逻辑组件模板库中获取自定义逻辑组件并进行复用。
这样,通过使用自定义逻辑组件进行游戏逻辑编辑,可以隐藏多个逻辑组件之间的连接关系,从而使得整个逻辑链路更为清晰整洁,且自定义逻辑组件的高度封装性也可以帮助开发人员快速理解并进行架构搭建,从而提高游戏开发效率。
S103:响应针对所述初始逻辑架构中目标逻辑组件的第一编辑操作,得到所述目标游戏的目标逻辑架构,以基于所述目标逻辑架构运行所述目标游戏。
这里,针对所述初始逻辑架构中目标逻辑组件的第一编辑操作,可以是针对所述目标逻辑组件的连接操作、赋值操作、位置调整操作等,通过对所述初始逻辑架构中目标逻辑组件的第一编辑操作,得到的所述目标逻辑架构可以参照图7a所示,即各目标逻辑组件连接完成,构成了运行所述目标游戏的逻辑链路。
参见图8所示,为本公开实施例提供的游戏运行方法的流程图,所述方法包括步骤S801~S804,其中:
S801:基于本公开实施例所提供的游戏编辑方法生成的目标游戏的目标逻辑架构与目标游戏场景,对所述目标游戏的游戏引擎进行初始化。
S802:基于初始化后的游戏引擎,渲染所述目标游戏的游戏画面。
S803:获取游戏引擎发送的交互指令,并基于所述交互指令和所述目标逻辑架构,确定与所述交互指令对应的交互结果。
S804:基于所述交互结果对所述游戏画面进行更新渲染。
针对S801,所述游戏引擎用于对游戏运行的实时游戏画面进行渲染,对所述游戏引擎进行初始化的过程,即为将根据上述游戏编辑方法得到的配置文件(目标逻辑架构与目标游戏场景)配置给所述游戏引擎的过程。
一种可能的实施方式中,如图9所示,可以通过以下步骤对目标游戏的游戏引擎进行初始化:
S901:基于所述目标游戏场景,在所述游戏引擎中创建与所述目标游戏场景中的场景元素对应的渲染节点。
S902:确定所述渲染节点与所述目标逻辑架构中各逻辑组件的对应关系,以使所述渲染节点能够按照所述逻辑组件对应的输出进行游戏画面渲染。
针对S802~S804,所述游戏引擎在目标游戏运行过程中,可以实时监听游戏用户端发送的设备交互指令,并将所述设备交互指令转换为可以出发游戏逻辑判断的游戏交互指令,并将所述游戏交互指令发送至游戏逻辑运行中枢(其可以是服务器中的模块,用于根据架构进行相应的游戏逻辑判断),以确定所述游戏交互指令对应的游戏交互结果。
示例性的,所述设备交互指令可以为响应针对游戏手柄“B按键”的触发操作后生成的,游戏引擎可以将该设备交互指令转换为游戏交互指令“跳跃指令”,并将所述“跳跃指令”发送至游戏逻辑运行中枢进行逻辑判断,以确定与“跳跃指令”对应的游戏交互结果,并将与所述游戏交互结果对应的渲染内容发送给所述游戏引擎,以进行游戏画面的更新渲染。
下面,将结合具体示例对本公开实施例所提供的游戏编辑方法和游戏运行方法进行介绍:
示例性的,以所述目标游戏为点击钻石游戏为例,游戏规则为在一定时间段内,用户可以点击用户端界面中的钻石,当用户点击屏幕中的钻石时,可以得到一定分数,点击钻石越多,则得分越多。
在游戏编辑阶段,可以通过响应场景元素添加指令,在游戏场景编辑页面中添加场景元素“钻石”,以构建所述钻石游戏对应的游戏场景;通过逻辑组件添加指令,在游戏逻辑编辑页面中添加存储组件、触发组件等逻辑组件,其中,所述存储组件在游戏中可以用于存储各钻石对应的得分,以及游戏过程中的用户总得分,所述触发组件在游戏中可以用于在监听到钻石被点击后修改被点击钻石的展示状态,并对存储的用户总得分进行更新,所述触发组件还可以在检测到用户游戏时长达到预设时长时,结束本次目标游戏。
具体的,游戏运行中的运行链路可以划分为设备交互层、指令交互层、规则机制层以及渲染层,其中所述设备交互层和渲染层由游戏引擎侧执行,指令交互层和机制规则层可以由游戏逻辑运行中枢执行。
示例性的,游戏逻辑运行中枢的游戏运行链路的示意图可以如图10a所示,图10a中,传统游戏编程运行链路中,游戏引擎监听设备的交互事件,并在根据交互事件进行数据处理和游戏逻辑处理,然后渲染层根据处理结果进行渲染;本申请的游戏逻辑运行中枢(即蓝图逻辑中枢)的游戏运行链路中,所述设备交互层(负责监听设备交互)和渲染层由游戏引擎侧执行,指令交互层和机制规则层可以由游戏逻辑运行中枢执行,所述游戏逻辑运行中枢可以根据定制化的蓝图逻辑确定机制规则层的目标交互事件,以连接指令交互层和机制规则层。
在游戏运行阶段,当游戏引擎实施检测用户界面被触发的像素点的位置坐标,并将所述位置坐标发送至指令交互层,以根据所述被触发的像素点的位置坐标判断是否有钻石被点击到,当检测到有钻石被点击到的情况下,向所述机制规则层发送“钻石被点击”事件,以触发点击钻石游戏中相应的游戏机制和规则,包括修改总得分、修改被点击钻石的展示状态、修改倒计时时间,并将与事件结果对应的渲染需求发送至渲染层进行渲染,以在用户端页面中对总得分进行修改、展示钻石被点击后的视频特效以及对倒计时进行更新。
实际应用中,在对游戏引擎进行初始化,以及目标游戏运行过程中,由于游戏引擎的种类不同,游戏逻辑运行中枢可能无法适配所有的游戏引擎,为了使得目标游戏的正常配置和运行,可以使用适配器作为衔接游戏引擎和游戏逻辑运行中枢的部件,所述适配器的本质即为解码器,其可以进行游戏引擎和游戏逻辑运行中枢之间接口语言的转换以及相关功能的实现,从而确保目标游戏的正常运行。
下面,以在目标游戏中触发点击后展示相关动画为例,对所述渲染层和游戏逻辑运行中枢在所述目标游戏运行时的交互机制进行介绍:
示例性的,所述目标游戏中与点击操作相关的逻辑架构可以如图10b所示,图10b中,当检测到用户“单击”后,对属性1“选择结果”进行赋值,赋值结果为“正确”,同时播放选择正确的音效“选择正确.mp3”,以及选择正确动画“选择正确.anim”,然后播放退场动画“退场动画.anim”。
示例性的,所述渲染层和所述游戏逻辑运行中枢的交互流程可以如图10c所示,图10c中,渲染器位于所述渲染层中,用于检测游戏交互事件以及游戏画面渲染,Adapter为连接所述渲染层和所述游戏逻辑运行中枢的适配器,Tenon为所述游戏逻辑运行中枢,在渲染器检测到有节点被点击(即发生游戏交互事件)时,通过所述适配器向所述游戏逻辑运行中枢发送游戏交互事件“触发(点击,点击实体)”,以将实体被点击这一游戏交互事件发送至游戏逻辑运行中枢进行处理,所述游戏逻辑运行中枢在接收到游戏交互事件后,可以根据所述目标游戏的逻辑架构,确定出当前需要执行的游戏动作为“播放动画”,并通过所述适配器将“播放动画”这一指令发送至所述渲染器,以指示所述渲染器播放动画。
进一步的,所述渲染器播放完成即视为触发了回调关联的事件,从而可以通过所述适配器提示所述游戏逻辑运行中枢动画播放完成,所述游戏逻辑运行中枢可以根据所述目标游戏的逻辑架构,确定当前需要执行的游戏动作为播放退场动画,并通过所述适配器向所述渲染器发送指令,以指示所述渲染器播放退场动画,并在退场动画播放完毕后通过所述适配器通知所述游戏逻辑运行中枢。
示例性的,所述目标游戏在运行中的主逻辑循环的示意图可以如图10d所示,图10d中,所述渲染器可以通过所述适配器将所述目标游戏发生的更新(比如用户操作等)同步至所述游戏逻辑运行中枢,所述游戏逻辑运行中枢可以根据所述逻辑架构执行所有的逻辑判断,并通过逻辑架构“面板逻辑”对当前的时序进行更新;通过游戏逻辑运行中枢可以通过所述适配器获取数据,并将最终生成的实体数据通过所述适配器发送至所述渲染器,以完成对所述渲染器中渲染数据的更新,从而完整的运行一次的游戏逻辑。
本公开实施例提供的游戏编辑方法和游戏运行方法,通过响应场景元素添加指令,在游戏场景编辑页面编辑的目标游戏场景中添加与所述场景元素添加指令对应的场景元素;使用将多个逻辑组件进行封装后得到的自定义逻辑组件进行游戏逻辑编辑,以搭建初始逻辑架构;并通过对所述初始逻辑架构的第一编辑操作得到所述目标游戏的目标逻辑架构,以基于所述目标逻辑架构运行所述目标游戏。这样,通过使用自定义逻辑组件进行游戏逻辑编辑,可以帮助开发人员快速的对重复或相似的游戏场景进行开发,节约游戏开发过程中的人力成本和时间成本,从而提高游戏开发效率。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与游戏编辑方法对应的游戏编辑装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述游戏编辑方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图11所示,为本公开实施例提供的一种游戏编辑装置的架构示意图,所述装置包括:第一添加模块1101、第二添加模块1102、编辑模块1103;其中,
第一添加模块1101,用于响应场景元素添加指令,在游戏场景编辑页面编辑的目标游戏场景中添加与所述场景元素添加指令对应的场景元素;
第二添加模块1102,用于响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中,以搭建包含至少一个目标逻辑组件的初始逻辑架构;其中,所述至少一个目标逻辑组件用于描述各场景元素在目标游戏中的执行逻辑,包括将多个逻辑组件进行封装后得到的自定义逻辑组件;
编辑模块1103,用于响应针对所述初始逻辑架构中目标逻辑组件的第一编辑操作,得到所述目标游戏的目标逻辑架构,以基于所述目标逻辑架构运行所述目标游戏。
一种可能的实施方式中,所述游戏逻辑编辑页面用于对所述目标游戏场景中的各目标场景元素分别进行逻辑编辑;
在响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中之前,所述第二添加模块1102还用于:
响应针对场景元素中的目标场景元素的选中操作,确定当前进行逻辑编辑的目标场景元素。
一种可能的实施方式中,所述第二添加模块1102,在响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面时,用于:
响应针对所述目标场景元素的逻辑组件添加操作,将与所述逻辑组件添加指令对应的目标逻辑组件添加至,与所述目标场景元素对应的游戏逻辑编辑页面中。
一种可能的实施方式中,所述编辑模块1103,还用于根据以下步骤编辑所述游戏场景编辑页面和所述游戏逻辑编辑页面:
响应目标预制体添加指令,在所述游戏场景编辑页面中添加目标预制体中的预制场景元素;以及,在所述游戏逻辑编辑页面中添加与所述预制场景元素对应的预制逻辑组件。
一种可能的实施方式中,所述逻辑组件包括存储组件、触发组件、功能组件以及动作组件,其中:
所述存储组件,用于响应用户的第一赋值操作,存储与所述第一赋值操作对应的数据值;
所述触发组件,用于在所述目标游戏的游戏引擎监听到预设的游戏交互事件后,触发所述触发组件后的其他逻辑组件,以使其他逻辑组件开始依次执行;
所述功能组件,用于实现所述执行逻辑中的目标功能;其中,所述目标功能包括描述逻辑架构中的各逻辑组件之间的关系、判断逻辑组件的输出是否符合预设条件、定义逻辑组件的循环次数;
所述动作组件,用于执行所述执行逻辑中的目标动作;其中,所述目标动作包括对目标场景元素的属性值进行赋值。
一种可能的实施方式中,所述第二添加模块1102,还用于根据以下步骤得到所述自定义逻辑组件:
响应封装指令,展示自定义逻辑组件的封装页面;其中,所述封装页面中展示有多个待封装的目标逻辑组件;
响应用户针对所述封装页面中多个目标逻辑组件的选择操作,确定多个第一目标逻辑组件;其中,所述第一目标逻辑组件中包含接出口组件,所述接出口组件用于定义所述自定义逻辑组件的执行开始和输出;
响应用户针对各第一目标逻辑组件的编辑操作,生成所述自定义逻辑组件。
参照图12所示,为本公开实施例提供的一种游戏运行装置的架构示意图,所述装置包括:初始模块1201、渲染模块1202、确定模块1203、更新模块1204;其中,
初始化模块1201,基于本公开实施例所提供的游戏编辑方法生成的目标游戏的目标逻辑架构与目标游戏场景,对所述目标游戏的游戏引擎进行初始化;
渲染模块1202,用于基于初始化后的游戏引擎,渲染所述目标游戏的游戏画面;
确定模块1203,用于获取游戏引擎发送的交互指令,并基于所述交互指令和所述目标逻辑架构,确定与所述交互指令对应的交互结果;
更新模块1204,用于基于所述交互结果对所述游戏画面进行更新渲染。
一种可能的实施方式中,所述初始化模块1201,用于根据以下步骤对所述目标游戏的游戏引擎进行初始化:
基于所述目标游戏场景,在所述游戏引擎中创建与所述目标游戏场景中的场景元素对应的渲染节点;
确定所述渲染节点与所述目标逻辑架构中各逻辑组件的对应关系,以使所述渲染节点能够按照所述逻辑组件对应的输出进行游戏画面渲染。
本公开实施例提供的游戏编辑装置和游戏运行装置,通过响应场景元素添加指令,在游戏场景编辑页面编辑的目标游戏场景中添加与所述场景元素添加指令对应的场景元素;使用将多个逻辑组件进行封装后得到的自定义逻辑组件进行游戏逻辑编辑,以搭建初始逻辑架构;并通过对所述初始逻辑架构的第一编辑操作得到所述目标游戏的目标逻辑架构,以基于所述目标逻辑架构运行所述目标游戏。这样,通过使用自定义逻辑组件进行游戏逻辑编辑,可以帮助开发人员快速的对重复或相似的游戏场景进行开发,节约游戏开发过程中的人力成本和时间成本,从而提高游戏开发效率。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
基于同一技术构思,本公开实施例还提供了一种计算机设备。参照图13所示,为本公开实施例提供的计算机设备1300的结构示意图,包括处理器1301、存储器1302、和总线1303。其中,存储器1302用于存储执行指令,包括内存13021和外部存储器13022;这里的内存13021也称内存储器,用于暂时存放处理器1301中的运算数据,以及与硬盘等外部存储器13022交换的数据,处理器1301通过内存13021与外部存储器13022进行数据交换,当计算机设备1300运行时,处理器1301与存储器1302之间通过总线1303通信,使得处理器1301在执行以下指令:
响应场景元素添加指令,在游戏场景编辑页面编辑的目标游戏场景中添加与所述场景元素添加指令对应的场景元素;
响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中,以搭建包含至少一个目标逻辑组件的初始逻辑架构;其中,所述至少一个目标逻辑组件用于描述各场景元素在目标游戏中的执行逻辑,包括将多个逻辑组件进行封装后得到的自定义逻辑组件;
响应针对所述初始逻辑架构中目标逻辑组件的第一编辑操作,得到所述目标游戏的目标逻辑架构,以基于所述目标逻辑架构运行所述目标游戏。
一种可能的实施方式中,处理器1301的指令中,所述游戏逻辑编辑页面用于对所述目标游戏场景中的各目标场景元素分别进行逻辑编辑;
在响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中之前,还包括:
响应针对场景元素中的目标场景元素的选中操作,确定当前进行逻辑编辑的目标场景元素。
一种可能的实施方式中,处理器1301的指令中,所述响应针对所述目标游戏场景的逻辑组件添加指令,将与所述逻辑组件添加指令对应的目标逻辑组件添加至游戏逻辑编辑页面中,包括:
响应针对所述目标场景元素的逻辑组件添加操作,将与所述逻辑组件添加指令对应的目标逻辑组件添加至,与所述目标场景元素对应的游戏逻辑编辑页面中。
一种可能的实施方式中,处理器1301的指令中,还包括根据以下方法编辑所述游戏场景编辑页面和所述游戏逻辑编辑页面:
响应目标预制体添加指令,在所述游戏场景编辑页面中添加目标预制体中的预制场景元素;以及,在所述游戏逻辑编辑页面中添加与所述预制场景元素对应的预制逻辑组件。
一种可能的实施方式中,处理器1301的指令中,所述逻辑组件包括存储组件、触发组件、功能组件以及动作组件,其中:
所述存储组件,用于响应用户的第一赋值操作,存储与所述第一赋值操作对应的数据值;
所述触发组件,用于在所述目标游戏的游戏引擎监听到预设的游戏交互事件后,触发所述触发组件后的其他逻辑组件,以使其他逻辑组件开始依次执行;
所述功能组件,用于实现所述执行逻辑中的目标功能;其中,所述目标功能包括描述逻辑架构中的各逻辑组件之间的关系、判断逻辑组件的输出是否符合预设条件、定义逻辑组件的循环次数;
所述动作组件,用于执行所述执行逻辑中的目标动作;其中,所述目标动作包括对目标场景元素的属性值进行赋值。
一种可能的实施方式中,处理器1301的指令中,还包括根据以下步骤得到所述自定义逻辑组件:
响应封装指令,展示自定义逻辑组件的封装页面;其中,所述封装页面中展示有多个待封装的目标逻辑组件;
响应用户针对所述封装页面中多个目标逻辑组件的选择操作,确定多个第一目标逻辑组件;其中,所述第一目标逻辑组件中包含接出口组件,所述接出口组件用于定义所述自定义逻辑组件的执行开始和输出;
响应用户针对各第一目标逻辑组件的编辑操作,生成所述自定义逻辑组件。
或者,使得处理器1301在执行以下指令:
基于本公开实施例所提供的游戏编辑方法生成的目标游戏的目标逻辑架构与目标游戏场景,对所述目标游戏的游戏引擎进行初始化;
基于初始化后的游戏引擎,渲染所述目标游戏的游戏画面;
获取游戏引擎发送的交互指令,并基于所述交互指令和所述目标逻辑架构,确定与所述交互指令对应的交互结果;
基于所述交互结果对所述游戏画面进行更新渲染。
一种可能的实施方式中,处理器1301的指令中,包括根据以下方法对所述目标游戏的游戏引擎进行初始化:
基于所述目标游戏场景,在所述游戏引擎中创建与所述目标游戏场景中的场景元素对应的渲染节点;
确定所述渲染节点与所述目标逻辑架构中各逻辑组件的对应关系,以使所述渲染节点能够按照所述逻辑组件对应的输出进行游戏画面渲染。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的游戏编辑方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的游戏编辑方法的步骤,具体可参见上述方法实施例,在此不再赘述。
其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。