对象生成方法及装置与流程

文档序号:11574737阅读:238来源:国知局

本发明涉及计算机领域,具体而言,涉及一种对象生成方法及装置。



背景技术:

目前,在现有技术中,常常是通过一些现成的制作工具来生成三维(threedimensions,简称3d)世界的虚拟对象,其中,上述制作工具可以包括:maya、autocad、zbrush等,这些工具是专门应用于特定领域的,用于针对该领域的使用需求生成对应的虚拟对象。例如,zbrush作为雕刻的虚拟模拟工具,可以任意快速改变模型形状的需求;又例如,autocad用于工程制图领域,可以实现对尺寸的精确把握,但却无法自动组合变形。又例如,maya主要用于电影、电视、广告等数码特效创作,但计算过程较为复杂。

也就是说,目前现有技术中提供的用于生成对象的方式过于单一,适用范围较小,如果需要生成不同对象,则需下载不同的制作工具,从而导致对象生成的扩展性较差的问题。

针对上述的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种对象生成方法及装置,以至少解决现有对象生成方法中所存在的生成扩展性较差的技术问题。

根据本发明实施例的一个方面,提供了一种对象生成方法,包括:在游戏应用客户端中获取对象配置指令,其中,上述对象配置指令用于配置待生成的游戏对象在三维空间的显示控制参数值;将上述显示控制参数值传入上述游戏应用客户端中的预设框架,其中,上述预设框架中配置有用于生成上述游戏对象的多种类型的生成控制算法;利用上述预设框架生成上述游戏对象。

根据本发明实施例的另一方面,还提供了一种对象生成装置,包括:第一获取单元,用于在游戏应用客户端中获取对象配置指令,其中,上述对象配置指令用于配置待生成的游戏对象在三维空间的显示控制参数值;传入单元,用于将上述显示控制参数值传入上述游戏应用客户端中的预设框架,其中,上述预设框架中配置有用于生成上述游戏对象的多种类型的生成控制算法;生成单元,用于利用上述预设框架生成上述游戏对象。

在本发明实施例中,在游戏应用客户端中获取对象配置指令后,该对象配置指令用于配置待生成的游戏对象在三维空间的显示控制参数值,将显示控制参数传入配置有用于生成游戏对象的多种类型的生成控制算法的预设框架,以实现利用上述预设框架生成游戏对象。而不再限于相关技术中只能通过多次下载具有不同的特定功能的制作工具,才能生成满足不同领域需求的对象,从而实现了利用该预设框架中配置的多种类型的生成控制算法,直接生成满足不同需求的对象,以提高对象生成的扩展性,进而解决了现有对象生成方法中所存在的生成扩展性较差的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种可选的对象生成方法的硬件环境示意图;

图2是根据本发明实施例的一种可选的对象生成方法的流程图;

图3是根据本发明实施例的一种可选的对象生成方法的预设框架的示意图;

图4是根据本发明实施例的一种可选的对象执行控制操作的流程图;

图5是根据本发明实施例的一种可选的对象生成装置的示意图;

图6是根据本发明实施例的另一种可选的对象生成装置的示意图;

图7是根据本发明实施例的一种可选的对象生成终端的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、装置、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、装置、产品或设备固有的其它步骤或单元。

实施例1

根据本发明实施例,提供了一种对象生成方法的实施例,作为一种可选的实施方式,该数据分享方法可以但不限于应用于如图1所示的应用环境中,终端102中安装有游戏应用客户端,游戏应用客户端中配置有预设框架,其中,该预设框架中配置有用于生成游戏对象的多种生成控制算法。终端102在游戏应用客户端中获取对象配置指令,其中,该对象配置指令用于配置待生成的游戏对象在三维空间的显示控制参数值,将上述显示控制参数值传入上述预设框架中,以实现利用该预设框架生成游戏对象。

在本实施例中,在游戏应用客户端中获取对象配置指令后,该对象配置指令用于配置待生成的游戏对象在三维空间的显示控制参数值,将显示控制参数传入配置有用于生成游戏对象的多种类型的生成控制算法的预设框架,以实现利用上述预设框架生成游戏对象。而不再限于相关技术中只能通过多次下载具有不同的特定功能的制作工具,才能生成满足不同领域需求的对象,从而实现了利用该预设框架中配置的多种类型的生成控制算法,直接生成满足不同需求的对象,以提高对象生成的扩展性,进而解决了现有对象生成方法中所存在的生成扩展性较差的技术问题。

可选地,在本实施例中,上述终端可以包括但不限于以下至少之一:手机、平板电脑、笔记本电脑、台式pc机、数字电视及其他用于直播分享的硬件设备。上述网络可以包括但不限于以下至少之一:广域网、城域网、局域网。上述只是一种示例,本实施例对此不做任何限定。

根据本发明实施例,提供了一种对象生成方法,如图2所示,该方法包括:

s202,在游戏应用客户端中获取对象配置指令,其中,对象配置指令用于配置待生成的游戏对象在三维空间的显示控制参数值;

s204,将显示控制参数值传入游戏应用客户端中的预设框架,其中,预设框架中配置有用于生成游戏对象的多种类型的生成控制算法;

s206,利用预设框架生成游戏对象。

可选地,在本实施例中,上述对象生成方法可以但不限于应用于游戏应用中以生成游戏对象,例如,以游戏应用为例,可以但不限于应用于游戏交互应用客户端中,以使游戏应用的玩家在游戏交互过程中,通过自定义生成自身所要使用的游戏对象,以满足玩家的游戏需求;此外,还可以但不限于应用于游戏编辑应用客户端中,以在游戏开发工程端利用上述预设框架在应用客户端中开发生成不同的游戏对象供玩家使用,从而达到丰富游戏内容的目的。其中,上述三维空间的游戏对象可以但不限于为增强现实(augmentedreality,简称ar)场景中三维空间的游戏对象,或虚拟现实(virtual,reality,简称vr)场景中三维空间的游戏对象。上述仅是一种示例,本实施例中在此不做任何限定。

可选地,在本实施例中,上述预设框架可以但不限于用于生成游戏对象、用于编辑和/或管理游戏对象。其中,上述预设框架中配置的用于生成游戏对象的多种类型的生成控制算法,其目的是为游戏对象生成提供更多元化的场景、空间以及条件,以达到提高生成扩展性的效果。需要说明的是,上述预设框架内部配置的游戏对象生成控制算法可以包括但不限于:三维空间对象生成算法,例如,点线面几何体生成控制算法,体素几何体生成控制算法,细分曲面生成控制算法,体积billboard生成控制算法,点云生成控制算法等等。上述仅是一种示例,本实施例中对此不做任何限定。

应当说明的是,在本实施例中,上述预设框架并不仅限于游戏应用客户端中,也可以为该框架位于对象配置服务器中,该对象配置服务器接收游戏应用客户端发送的对象配置指令来进行相应的对象管理、编辑等,相应地,也可以是,在本地的终端中为游戏应用客户端分配相应的存储空间,该存储空间用于设置对象配置框架,第一客户端发起的对象配置指令来进行相应地对象管理或编辑。上述仅是一种示例,本实施例中在此不做任何限定。

需要说明的是,在游戏应用客户端中获取对象配置指令后,该对象配置指令用于配置待生成的游戏对象在三维空间的显示控制参数值,将显示控制参数传入配置有用于生成游戏对象的多种类型的生成控制算法的预设框架,以实现利用上述预设框架生成游戏对象,而不再限于相关技术中只能通过多次下载具有不同的特定功能的制作工具,才能生成满足不同领域需求的对象,从而实现了利用该预设框架中配置的多种类型的生成控制算法,直接生成满足不同需求的对象,以提高对象生成的扩展性,进而解决了现有对象生成方法中所存在的生成扩展性较差的技术问题。

可选地,在本实施例中,上述预设框架可以但不限于包括两个层架框架,分别为:对象层级框架、场景层级框架,其中,对象层级框架用于生成元素对象类的对象,场景层级框架用于生成交互对象类的对象。例如,如图3所示,预设框架包括:对象层级框架(objects)、场景层级框架(scene)上述仅是一种可选的实施方式,本实施例中对此不做任何限定。

例如,以在增强现实ar场景中的一张桌子为例,该桌子包括桌面和四个桌腿,其中,该桌子整体可以但不限于为交互对象类的对象(也可称作对象组),而桌面和四个桌腿可以但不限于为元素对象类的对象。也就是说,交互对象类的对象可以但不限于通过组合已生成的元素对象类的对象直接进行编辑而得到,也可以但不限于对先生成满足需求的元素对象类的对象,再调用场景级框架进行组合,以生成交互对象类的对象。上述仅是一种可选的方式,本实施例中对此不做任何限定。

可选地,在本实施例中,在调用预设框架中与元素对象类对应的对象层级框架生成游戏对象的情况下,可以包括但不限于:

1)在获取到与一个游戏对象匹配的一组显示控制参数值的情况下,可以利用对象层级框架中配置的生成控制算法,直接按照上述一组显示控制参数值生成所需的三维空间中的游戏对象。例如,直接获取与一个桌腿匹配的一组显示控制参数值,以在上述三维空间生成对象桌腿。

2)在获取到与至少两个游戏对象匹配的至少两组显示控制参数值的情况下,可以按照预定融合逻辑融合至少两组显示控制参数值,得到一组融合后的显示控制参数值,利用对象层级框架中配置的生成控制算法,按照上述融合后的显示控制参数值生成游戏对象。例如,获取到与两个桌腿匹配的两组显示控制参数值,通过融合可以得到与一个桌面匹配的一组显示控制参数值,以在上述三维空间生成对象桌面。

也就是说,在获取至少两组显示控制参数值的情况下,则对所指示的至少两个基本的对象进行融合,通过融合不同对象的显示控制参数值的方式,以实现通过融合得到具有的新的显示控制参数的新对象,从而实现通过融合方式生成更多不同的游戏对象,以达到提高游戏对象的生成扩展性的效果。

具体来说,如图3所示,在对游戏对象(如对象object)的生成过程中,在获取到一组显示控制参数的情况下,可以但不限于直接根据上述显示控制参数值生成一个对象object;在获取到至少两组显示控制参数的情况下,可以但不限于将至少两组显示控制参数值分别对应的两个以上的对象object进行融合,以生成一个新的对象object(也可称作对象objectopt)。其中,上述用于融合的实现方式可以包括但不限于以下之一:网络软融合、网络硬融合。上述仅是一种示例,本实施例中对此不做任何限定。

可选地,在本实施例中,上述显示控制参数值所指示的信息包括以下至少一种:对象控制点位置、对象渲染方式(mesh)、对象碰撞方式(collision)。

需要说明的是,在本实施例中,在游戏对象为元素对象类的情况下,可以但不限于在对象层级框架中,按照上述显示控制参数值所指示的信息利用生成控制算法生成基本的对象object,也就是元素对象类的对象;此外,在游戏对象为交互对象类的情况下,可以但不限于在场景层级框架中,将上述对象标识所标识的已生成的基本的对象object组合得到对象组(可以用group标识),并配置对应的对象交互属性,以生成交互对象类的对象。

可选地,在本实施例中,上述对象交互属性可以包括但不限于:位置(position)、旋转(rotation)、缩放(scaling)等,从而实现为对象组配置骨骼、动画等交互特性。例如,上述交互特性可以但不限于为实现骨骼动画,父子动画,跟随动画等基本的交互反馈表现的特性,也可以但不限于为用于建立更加复杂的树/图模型,如hmm等基于机器学习的节点相关关系,来对上述对象组的交互属性实现高度自由化的定义、组合,从而达到提高对象生成的扩展性的效果。

可选地,在本实施例中,在利用预设框架生成游戏对象之后,还包括:获取控制操作指令,其中,控制操作指令用于指示对在三维空间中的预定位置上的游戏对象执行控制操作,根据控制操作指令对预定位置上的游戏对象执行控制操作,并获取操作结果。

需要说明的是,在本实施例中,上述用于执行控制操作的游戏对象可以包括但不限于:基本的对象object(或融合后的对象objectopt),对象组(可以用group标识)。例如,如图3所示,在控制操作指令指示执行控制操作的游戏对象为独立的对象object的情况下,则可对该对象object直接进行对应的控制操作;而在控制操作指令指示执行控制操作的游戏对象为多个独立的对象object组合得到的一组或多组对象组(可以用group标识)情况下,则对该对象组(可以用group标识)进行对应的控制操作。

通过应用本实施例,在游戏应用客户端中获取对象配置指令后,该对象配置指令用于配置待生成的游戏对象在三维空间的显示控制参数值,将显示控制参数传入配置有用于生成游戏对象的多种类型的生成控制算法的预设框架,以实现利用上述预设框架生成游戏对象。而不再限于相关技术中只能通过多次下载具有不同的特定功能的制作工具,才能生成满足不同领域需求的对象,从而实现了利用该预设框架中配置的多种类型的生成控制算法,直接生成满足不同需求的对象,以提高对象生成的扩展性,进而解决了现有对象生成方法中所存在的生成扩展性较差的技术问题。

作为一种可选的方案,将显示控制参数值传入游戏应用客户端中的预设框架包括:

s1,根据对象配置指令确定游戏对象的对象类型;

s2,调用预设框架中与对象类型对应的层级框架,将显示控制参数值传入与对象类型对应的层级框架。

需要说明的是,在本实施例中,上述对象类型可以包括但不限于:元素对象类、交互对象类。预设框架中与上述对象类型对应的层级框架可以包括但不限于:对象层级框架、场景层级框架。

可选地,在本实施例中,调用预设框架中与对象类型对应的层级框架,将显示控制参数值传入与对象类型对应的层级框架包括:

1)在对象类型指示为元素对象类的情况下,调用预设框架中与元素对象类对应的对象层级框架;将显示控制参数值传入对象层级框架。

2)在对象类型指示为交互对象类的情况下,调用预设框架中与交互对象类对应的场景层级框架;将显示控制参数值传入场景层级框架。

具体结合以下示例进行说明,如图3所示,预设框架包括:对象层级框架(objects)、场景层级框架(scene)。

其中,针对在对象层级框架(objects)中生成的元素对象类中的对象可以但不限于:为对象object定义统一的接口。该接口配置有接口函数,包括:控制函数、渲染函数、碰撞函数,其中,以渲染(mesh)函数为例,用于定义要显示的内容;以碰撞(collision)函数为例,用于定义对象如何生成碰撞体。也就是说,通过上述接口函数调用生成对象所需的控制算法,以生成满足不同实际需求的对象,从而达到改善对象生成扩展性的效果,而无需下载多个不同的制作工具,还提高了对象生成效率。

其中,针对在场景层级框架(scene)中生成的交互对象类中的对象可以但不限于:通过定义多个基本的对象object之间的连接关系,以得到对象组group。进一步,通过为该对象组配置对象交互属性,如配置交互接口(例如interaction接口),以达到制作更复杂的动画,特效等内容。其中,上述对象交互属性可以包括但不限于以下至少之一:位置(position)、旋转(rotation)、缩放(scaling)等,从而实现为对象组配置骨骼、动画等交互特性。例如,上述交互特性可以但不限于为实现骨骼动画,父子动画,跟随动画等基本的交互反馈表现的特性,也可以但不限于为用于建立更加复杂的树/图模型,如hmm等基于机器学习的节点相关关系,来对上述对象组的交互属性实现高度自由化的定义、组合,从而达到提高对象生成的扩展性的效果。

通过本申请提供的实施例,调用预设框架中与对象类型对应的层级框架,将显示控制参数值传入与对象类型对应的层级框架,从而实现对象的层次化管理,以实现对对象的多维度的扩展。

作为一种可选的方案,调用预设框架中与对象类型对应的层级框架,将显示控制参数值传入与对象类型对应的层级框架包括:

s1,在对象类型指示为元素对象类的情况下,调用预设框架中与元素对象类对应的对象层级框架;

s2,将显示控制参数值传入对象层级框架。

可选地,在本实施例中,利用对象层级框架生成游戏对象包括:获取显示控制参数值所指示的以下至少一种信息:对象控制点位置、对象渲染方式、对象碰撞方式;在对象层级框架中,按照显示控制参数值所指示的信息生成游戏对象,其中,生成控制算法包括三维空间对象生成算法。

具体结合以下说明,可以但不限于将显示控制参数值中与对象object的接口函数对应的信息传入对象层级框架中,使用如图3最下方一列所示的以下至少一种生成控制算法:点线面几何体生成控制算法,体素几何体生成控制算法,细分曲面生成控制算法,体积billboard生成控制算法,点云生成控制算法等等,来生成元素对象类的对象object。

作为一种可选的方案,在对象类型指示为元素对象类的情况下,利用预设框架生成游戏对象包括:

1)在获取到一组显示控制参数值的情况下,从对象层级框架中配置的生成控制算法中获取与一组显示控制参数值匹配的第一目标生成控制算法;利用第一目标生成控制算法,按照显示控制参数值生成游戏对象。

2)在获取到至少两组显示控制参数值的情况下,按照预定融合逻辑融合至少两组显示控制参数值,得到一组融合后的显示控制参数值;从对象层级框架中配置的生成控制算法中获取与一组融合后的显示控制参数值匹配的第二目标生成控制算法;利用第二目标生成控制算法,按照显示控制参数值生成游戏对象。

需要说明的是,在本实施例中,对于获取到至少两组显示控制参数值的情况,可以但不限于按照预定融合逻辑融合至少两组显示控制参数值,得到一组融合后的显示控制参数值,从而实现按照上述融合后的显示控制参数值生成一个新的游戏对象。其中,预定融合逻辑可以包括但不限于以下之一:网络硬融合实现方式、网络软融合实现方式。

例如,将至少两组显示控制参数值中的控制点位置信息融合,生成新的对象控制点;将至少两组显示控制参数值中的渲染方式融合,生成新的对象渲染方式,以得到新的渲染方式;将至少两组显示控制参数值中的碰撞方式融合,生成新的对象碰撞方式。其中,融合后得到的新的对象的显示控制参数值的信息已被更新替换,得到一个新的独立的对象object。

通过本申请提供的实施例,将不同的三维空间对象生成算法接入应用的预设框架中,以生成游戏对象,从而实现在同一预设框架下融合不同算法的优点,以展示更加丰富的对象,此外,通过融合至少两个对象得到新的对象,还将进一步提高对象组合的自由度,达到提高对象生成的扩展性的目的。

作为一种可选的方案,调用预设框架中与对象类型对应的层级框架,将显示控制参数值传入与对象类型对应的层级框架包括:

s1,在对象类型指示为交互对象类的情况下,调用预设框架中与交互对象类对应的场景层级框架;

s2,将显示控制参数值传入场景层级框架。

可选地,在本实施例中,利用预设框架生成游戏对象包括:获取显示控制参数值所指示的对象标识、对象交互属性;在场景层级框架中,根据对象配置指令对已生成的对象标识所标识的游戏对象进行组合,得到对象组,并为对象组配置对象交互属性。

需要说明的是,在本实施例中,上述对象标识所标识的游戏对象可以包括但不限于:根据配置指令生成新的游戏对象,以组合得到该对象组,也可以包括但不限于:对所缓存的已生成的游戏对象进行编辑,以组合得到该对象组。上述仅是一种可选的方式,本实施例中对此不做任何限定。

其中,在根据配置指令生成新的游戏对象以组合对象组的情况下,可以但不限于:在获取显示控制参数值所指示的对象标识、对象交互属性之后,在未查找到对象标识所标识的游戏对象的情况下,获取显示控制参数值所指示的以下至少一种信息:对象控制点位置、对象渲染方式、对象碰撞方式;在对象层级框架中,按照显示控制参数值所指示的信息,利用生成控制算法生成游戏对象,其中,生成控制算法包括三维空间对象生成算法,对象层级框架与对象类型指示为元素对象类的对象相对应。

通过本申请提供的实施例,通过高度自由化的定义多个对象之间的组合,以实现对组合后的对象组进行交互操作,从而实现对对象的多层次生成管理,提高了对象的自由度和扩展性。

作为一种可选的方案,在利用预设框架生成游戏对象之后,还包括:

s1,获取控制操作指令,其中,控制操作指令用于指示对在三维空间中的预定位置上的游戏对象执行控制操作;

s2,根据控制操作指令对预定位置上的游戏对象执行控制操作,并获取操作结果。

具体结合图4所示步骤s402-s408进行说明,在步骤s206利用预设框架生成游戏对象之后,还可以获取在3d空间的某个位置发出的控制操作指令,根据该控制操作指令来判断这个指令所指示的待操作的对象是否为对象object:若判断结果为是,则执行object变化,若判断结果为否,则执行group变化。例如,以操作的是对象组group为例,所指示的变化是让对象组group所指示的骨骼动起来,则可对该对象组group控制执行交互动作,即控制骨骼动作;以操作的是对象object为例,所指示的变化是让对象object改变架构,例如,将方形修改为圆形。

具体结合以下示例进行说明,以对ar场景下三维空间中预定位置上的对象组group(如虚拟人物角色)执行控制操作为例,向该虚拟人物角发出对象配置指令,根据该对象配置指令判断出是控制该虚拟人物角色执行摇晃动作,即指示交互对象类的虚拟人物角色执行动作,则可调用对象配置指令中的显示控制参数值传入场景层级框架,控制该虚拟人物角色的group骨架动起来,完成摇晃动作,实现交互反馈。而对组成该虚拟人物角色的元素对象类的对象,如对象object包括:四肢、躯干,未发生任何变化。

此外,若对象配置指令不是控制虚拟人物角色执行交互动作,而是对对象object执行动作,例如,改变对象object的形状,如将躯干由椭圆形改为三角形,则可通过对对象object执行控制改变,来完成对象配置过程。

然后,通过上述生成控制算法来重新生成新的对象object或对象组group,并渲染,以向玩家展示通过配置变化后重新生成的游戏对象。

通过本申请提供的实施例,通过根据控制操作指令对待操作的游戏对象执行控制操作,并获取操作结果,以实现对在预设框架下自定义的对象的灵活控制,使得操作对象更加丰富。

需要说明的是,对于前述的各装置实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的装置可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的装置。

实施例2

根据本发明实施例,还提供了一种用于实施上述对象生成方法的对象生成装置,如图5所示,该装置包括:

1)第一获取单元502,用于在游戏应用客户端中获取对象配置指令,其中,对象配置指令用于配置待生成的游戏对象在三维空间的显示控制参数值;

2)传入单元504,用于将显示控制参数值传入游戏应用客户端中的预设框架,其中,预设框架中配置有用于生成游戏对象的多种类型的生成控制算法;

3)生成单元506,用于利用预设框架生成游戏对象。

可选地,在本实施例中,上述对象生成方法可以但不限于应用于游戏应用中以生成游戏对象,例如,以游戏应用为例,可以但不限于应用于游戏交互应用客户端中,以使游戏应用的玩家在游戏交互过程中,通过自定义生成自身所要使用的游戏对象,以满足玩家的游戏需求;此外,还可以但不限于应用于游戏编辑应用客户端中,以在游戏开发工程端利用上述预设框架在应用客户端中开发生成不同的游戏对象供玩家使用,从而达到丰富游戏内容的目的。其中,上述三维空间的游戏对象可以但不限于为增强现实(augmentedreality,简称ar)场景中三维空间的游戏对象,或虚拟现实(virtual,reality,简称vr)场景中三维空间的游戏对象。上述仅是一种示例,本实施例中在此不做任何限定。

可选地,在本实施例中,上述对象生成方法可以但不限于应用于游戏应用中以生成游戏对象,例如,以游戏应用为例,可以但不限于应用于游戏交互应用客户端中,以使游戏应用的玩家在游戏交互过程中,通过自定义生成自身所要使用的游戏对象,以满足玩家的游戏需求;此外,还可以但不限于应用于游戏编辑应用客户端中,以在游戏开发工程端利用上述预设框架在应用客户端中开发生成不同的游戏对象供玩家使用,从而达到丰富游戏内容的目的。其中,上述三维空间的游戏对象可以但不限于为增强现实(augmentedreality,简称ar)场景中三维空间的游戏对象,或虚拟现实(virtual,reality,简称vr)场景中三维空间的游戏对象。上述仅是一种示例,本实施例中在此不做任何限定。

应当说明的是,在本实施例中,上述预设框架并不仅限于游戏应用客户端中,也可以为该框架位于对象配置服务器中,该对象配置服务器接收游戏应用客户端发送的对象配置指令来进行相应的对象管理、编辑等,相应地,也可以是,在本地的终端中为游戏应用客户端分配相应的存储空间,该存储空间用于设置对象配置框架,第一客户端发起的对象配置指令来进行相应地对象管理或编辑。上述仅是一种示例,本实施例中在此不做任何限定。

需要说明的是,在游戏应用客户端中获取对象配置指令后,该对象配置指令用于配置待生成的游戏对象在三维空间的显示控制参数值,将显示控制参数传入配置有用于生成游戏对象的多种类型的生成控制算法的预设框架,以实现利用上述预设框架生成游戏对象。而不再限于相关技术中只能通过多次下载具有不同的特定功能的制作工具,才能生成满足不同领域需求的对象,从而实现了利用该预设框架中配置的多种类型的生成控制算法,直接生成满足不同需求的对象,以提高对象生成的扩展性,进而解决了现有对象生成方法中所存在的生成扩展性较差的技术问题。

可选地,在本实施例中,上述预设框架可以但不限于包括两个层架框架,分别为:对象层级框架、场景层级框架,其中,对象层级框架用于生成元素对象类的对象,场景层级框架用于生成交互对象类的对象。例如,如图3所示,预设框架包括:对象层级框架(objects)、场景层级框架(scene)上述仅是一种可选的实施方式,本实施例中对此不做任何限定。

例如,以在增强现实ar场景中的一张桌子为例,该桌子包括桌面和四个桌腿,其中,该桌子整体可以但不限于为交互对象类的对象(也可称作对象组),而桌面和四个桌腿可以但不限于为元素对象类的对象。也就是说,交互对象类的对象可以但不限于通过组合已生成的元素对象类的对象直接进行编辑而得到,也可以但不限于对先生成满足需求的元素对象类的对象,再调用场景级框架进行组合,以生成交互对象类的对象。上述仅是一种可选的方式,本实施例中对此不做任何限定。

可选地,在本实施例中,在调用预设框架中与元素对象类对应的对象层级框架生成游戏对象的情况下,可以包括但不限于:

1)在获取到与一个游戏对象匹配的一组显示控制参数值的情况下,可以利用对象层级框架中配置的生成控制算法,直接按照上述一组显示控制参数值生成所需的三维空间中的游戏对象。例如,直接获取与一个桌腿匹配的一组显示控制参数值,以在上述三维空间生成对象桌腿。

2)在获取到与至少两个游戏对象匹配的至少两组显示控制参数值的情况下,可以按照预定融合逻辑融合至少两组显示控制参数值,得到一组融合后的显示控制参数值,利用对象层级框架中配置的生成控制算法,按照上述融合后的显示控制参数值生成游戏对象。例如,获取到与两个桌腿匹配的两组显示控制参数值,通过融合可以得到与一个桌面匹配的一组显示控制参数值,以在上述三维空间生成对象桌面。

也就是说,在获取至少两组显示控制参数值的情况下,则对所指示的至少两个基本的对象进行融合,通过融合不同对象的显示控制参数值的方式,以实现通过融合得到具有的新的显示控制参数的新对象,从而实现通过融合方式生成更多不同的游戏对象,以达到提高游戏对象的生成扩展性的效果。

具体来说,如图3所示,在对游戏对象(如对象object)的生成过程中,在获取到一组显示控制参数的情况下,可以但不限于直接根据上述显示控制参数值生成一个对象object;在获取到至少两组显示控制参数的情况下,可以但不限于将至少两组显示控制参数值分别对应的两个以上的对象object进行融合,以生成一个新的对象object(也可称作对象objectopt)。其中,上述用于融合的实现方式可以包括但不限于以下之一:网络软融合、网络硬融合。上述仅是一种示例,本实施例中对此不做任何限定。

可选地,在本实施例中,上述显示控制参数值所指示的信息包括以下至少一种:对象控制点位置、对象渲染方式(mesh)、对象碰撞方式(collision)。

需要说明的是,在本实施例中,在游戏对象为元素对象类的情况下,可以但不限于在对象层级框架中,按照上述显示控制参数值所指示的信息利用生成控制算法生成基本的对象object,也就是元素对象类的对象;此外,在游戏对象为交互对象类的情况下,可以但不限于在场景层级框架中,将上述对象标识所标识的已生成的基本的对象object组合得到对象组(可以用group标识),并配置对应的对象交互属性,以生成交互对象类的对象。

可选地,在本实施例中,上述对象交互属性可以包括但不限于:位置(position)、旋转(rotation)、缩放(scaling)等,从而实现为对象组配置骨骼、动画等交互特性。例如,上述交互特性可以但不限于为实现骨骼动画,父子动画,跟随动画等基本的交互反馈表现的特性,也可以但不限于为用于建立更加复杂的树/图模型,如hmm等基于机器学习的节点相关关系,来对上述对象组的交互属性实现高度自由化的定义、组合,从而达到提高对象生成的扩展性的效果。

可选地,在本实施例中,在利用预设框架生成游戏对象之后,还包括:获取控制操作指令,其中,控制操作指令用于指示对在三维空间中的预定位置上的游戏对象执行控制操作,根据控制操作指令对预定位置上的游戏对象执行控制操作,并获取操作结果。

需要说明的是,在本实施例中,上述用于执行控制操作的游戏对象可以包括但不限于:基本的对象object(或融合后的对象objectopt),对象组(可以用group标识)。例如,如图3所示,在控制操作指令指示执行控制操作的游戏对象为独立的对象object的情况下,则可对该对象object直接进行对应的控制操作;而在控制操作指令指示执行控制操作的游戏对象为多个独立的对象object组合得到的一组或多组对象组(可以用group标识)情况下,则对该对象组(可以用group标识)进行对应的控制操作。

通过应用本实施例,在游戏应用客户端中获取对象配置指令后,该对象配置指令用于配置待生成的游戏对象在三维空间的显示控制参数值,将显示控制参数传入配置有用于生成游戏对象的多种类型的生成控制算法的预设框架,以实现利用上述预设框架生成游戏对象。而不再限于相关技术中只能通过多次下载具有不同的特定功能的制作工具,才能生成满足不同领域需求的对象,从而实现了利用该预设框架中配置的多种类型的生成控制算法,直接生成满足不同需求的对象,以提高对象生成的扩展性,进而解决了现有对象生成方法中所存在的生成扩展性较差的技术问题。

作为一种可选的方案,如图6所示,传入单元504包括:

1)确定模块602,用于根据对象配置指令确定游戏对象的对象类型;

2)传入模块604,用于调用预设框架中与对象类型对应的层级框架,将显示控制参数值传入与对象类型对应的层级框架。

需要说明的是,在本实施例中,上述对象类型可以包括但不限于:元素对象类、交互对象类。预设框架中与上述对象类型对应的层级框架可以包括但不限于:对象层级框架、场景层级框架。

可选地,在本实施例中,调用预设框架中与对象类型对应的层级框架,将显示控制参数值传入与对象类型对应的层级框架包括:

1)在对象类型指示为元素对象类的情况下,调用预设框架中与元素对象类对应的对象层级框架;将显示控制参数值传入对象层级框架。

2)在对象类型指示为交互对象类的情况下,调用预设框架中与交互对象类对应的场景层级框架;将显示控制参数值传入场景层级框架。

具体结合以下示例进行说明,如图3所示,预设框架包括:对象层级框架(objects)、场景层级框架(scene)。

其中,针对在对象层级框架(objects)中生成的元素对象类中的对象可以但不限于:为对象object定义统一的接口。该接口配置有接口函数,包括:控制函数、渲染函数、碰撞函数,其中,以渲染(mesh)函数为例,用于定义要显示的内容;以碰撞(collision)函数为例,用于定义对象如何生成碰撞体。也就是说,通过上述接口函数调用生成对象所需的控制算法,以生成满足不同实际需求的对象,从而达到改善对象生成扩展性的效果,而无需下载多个不同的制作工具,还提高了对象生成效率。

其中,针对在场景层级框架(scene)中生成的交互对象类中的对象可以但不限于:通过定义多个基本的对象object之间的链接关系,以得到对象组group。进一步,通过为该对象组配置对象交互属性,如配置交互接口(例如interaction接口),以达到制作更复杂的动画,特效等内容。其中,上述对象交互属性可以包括但不限于以下至少之一:位置(position)、旋转(rotation)、缩放(scaling)等,从而实现为对象组配置骨骼、动画等交互特性。例如,上述交互特性可以但不限于为实现骨骼动画,父子动画,跟随动画等基本的交互反馈表现的特性,也可以但不限于为用于建立更加复杂的树/图模型,如hmm等基于机器学习的节点相关关系,来对上述对象组的交互属性实现高度自由化的定义、组合,从而达到提高对象生成的扩展性的效果。

通过本申请提供的实施例,调用预设框架中与对象类型对应的层级框架,将显示控制参数值传入与对象类型对应的层级框架,从而实现对象的层次化管理,以实现对对象的多维度的扩展。

作为一种可选的方案,传入模块包括:

1)第一调用子模块,用于在对象类型指示为元素对象类的情况下,调用预设框架中与元素对象类对应的对象层级框架;

2)第一传入子模块,用于将显示控制参数值传入对象层级框架。

可选地,在本实施例中,生成单元506包括:(1)第一获取模块,用于获取显示控制参数值所指示的以下至少一种信息:对象控制点位置、对象渲染方式、对象碰撞方式;(2)第三生成模块,用于在对象层级框架中,按照显示控制参数值所指示的信息,利用生成控制算法生成游戏对象,其中,生成控制算法包括三维空间对象生成算法。

具体结合以下说明,可以但不限于将显示控制参数值中与对象object的接口函数对应的信息传入对象层级框架中,使用如图3最下方一列所示的以下至少一种生成控制算法:点线面几何体生成控制算法,体素几何体生成控制算法,细分曲面生成控制算法,体积billboard生成控制算法,点云生成控制算法等等,来生成元素对象类的对象object。

作为一种可选的方案,生成单元506包括:

1)第一获取模块,用于在获取到一组显示控制参数值的情况下,从对象层级框架中配置的生成控制算法中获取与一组显示控制参数值匹配的第一目标生成控制算法;第一生成模块,用于利用第一目标生成控制算法,按照显示控制参数值生成游戏对象;或者

2)融合模块,用于在获取到至少两组显示控制参数值的情况下,按照预定融合逻辑融合至少两组显示控制参数值,得到一组融合后的显示控制参数值;第二获取模块,用于从对象层级框架中配置的生成控制算法中获取与一组融合后的显示控制参数值匹配的第二目标生成控制算法;第二生成模块,用于利用第二目标生成控制算法,按照显示控制参数值生成游戏对象。

需要说明的是,在本实施例中,对于获取到至少两组显示控制参数值的情况,可以但不限于按照预定融合逻辑融合至少两组显示控制参数值,得到一组融合后的显示控制参数值,从而实现按照上述融合后的显示控制参数值生成一个新的游戏对象。其中,预定融合逻辑可以包括但不限于以下之一:网络硬融合实现方式、网络软融合实现方式。

例如,将至少两组显示控制参数值中的控制点位置信息融合,生成新的对象控制点;将至少两组显示控制参数值中的渲染方式融合,生成新的对象渲染方式,以得到新的渲染方式;将至少两组显示控制参数值中的碰撞方式融合,生成新的对象碰撞方式。其中,融合后得到的新的对象的显示控制参数值的信息已被更新替换,得到一个新的独立的对象object。

通过本申请提供的实施例,将不同的三维空间对象生成算法接入应用的预设框架中,以生成游戏对象,从而实现在同一预设框架下融合不同算法的优点,以展示更加丰富的对象,此外,通过融合至少两个对象得到新的对象,还将进一步提高对象组合的自由度,达到提高对象生成的扩展性的目的。

作为一种可选的方案,传入模块包括:

1)第二调用子模块,用于在对象类型指示为交互对象类的情况下,调用预设框架中与交互对象类对应的场景层级框架;

2)第二传入子模块,用于将显示控制参数值传入场景层级框架。

可选地,在本实施例中,生成单元506包括:第四获取模块,用于获取显示控制参数值所指示的对象标识、对象交互属性;组合模块,用于在场景层级框架中,根据对象配置指令对已生成的对象标识所标识的游戏对象进行组合,得到对象组,并为对象组配置对象交互属性。

需要说明的是,在本实施例中,上述对象标识所标识的游戏对象可以包括但不限于:根据配置指令生成新的游戏对象,以组合得到该对象组,也可以包括但不限于:对所缓存的已生成的游戏对象进行编辑,以组合得到该对象组。上述仅是一种可选的方式,本实施例中对此不做任何限定。

其中,在根据配置指令生成新的游戏对象以组合对象组的情况下,上述装置还包括:第五获取模块,用于在获取显示控制参数值所指示的对象标识、对象交互属性之后,在未查找到对象标识所标识的游戏对象的情况下,获取显示控制参数值所指示的以下至少一种信息:对象控制点位置、对象渲染方式、对象碰撞方式;第四生成模块,用于在对象层级框架中,按照显示控制参数值所指示的信息,利用生成控制算法生成游戏对象,其中,生成控制算法包括三维空间对象生成算法,对象层级框架与对象类型指示为元素对象类的对象相对应。

通过本申请提供的实施例,通过高度自由化的定义多个对象之间的组合,以实现对组合后的对象组进行交互操作,从而实现对对象的多层次生成管理,提高了对象的自由度和扩展性。

作为一种可选的方案,还包括:

1)第二获取单元,用于在利用预设框架生成游戏对象之后,获取控制操作指令,其中,控制操作指令用于指示对在三维空间中的预定位置上的游戏对象执行控制操作;

2)操作单元,用于根据控制操作指令对预定位置上的游戏对象执行控制操作,并获取操作结果。

具体结合图4所示步骤s402-s408进行说明,在步骤s206利用预设框架生成游戏对象之后,还可以获取在3d空间的某个位置发出的控制操作指令,根据该控制操作指令来判断这个指令所指示的待操作的对象是否为对象object:若判断结果为是,则执行object变化,若判断结果为否,则执行group变化。例如,以操作的是对象组group为例,所指示的变化是让对象组group所指示的骨骼动起来,则可对该对象组group控制执行交互动作,即控制骨骼动作;以操作的是对象object为例,所指示的变化是让对象object改变架构,例如,将方形修改为圆形。

具体结合以下示例进行说明,以对ar场景下三维空间中预定位置上的对象组group(如虚拟人物角色)执行控制操作为例,向该虚拟人物角发出对象配置指令,根据该对象配置指令判断出是控制该虚拟人物角色执行摇晃动作,即指示交互对象类的虚拟人物角色执行动作,则可调用对象配置指令中的显示控制参数值传入场景层级框架,控制该虚拟人物角色的group骨架动起来,完成摇晃动作,实现交互反馈。而对组成该虚拟人物角色的元素对象类的对象,如对象object包括:四肢、躯干,未发生任何变化。

此外,若对象配置指令不是控制虚拟人物角色执行交互动作,而是对对象object执行动作,例如,改变对象object的形状,如将躯干由椭圆形改为三角形,则可通过对对象object执行控制改变,来完成对象配置过程。

然后,通过上述生成控制算法来重新生成新的对象object或对象组group,并渲染,以向玩家展示通过配置变化后重新生成的游戏对象。

通过本申请提供的实施例,通过根据控制操作指令对待操作的游戏对象执行控制操作,并获取操作结果,以实现对在预设框架下自定义的对象的灵活控制,使得操作对象更加丰富。

需要说明的是,对于前述的各装置实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

实施例3

根据本发明实施例,还提供了一种用于实施上述对象生成方法的对象生成终端,如图7所示,该终端包括:

1)通讯接口702,设置为在游戏应用客户端中获取对象配置指令,其中,对象配置指令用于配置待生成的游戏对象在三维空间的显示控制参数值;

2)处理器704,与通讯接口702连接,设置为将显示控制参数值传入游戏应用客户端中的预设框架,其中,预设框架中配置有用于生成游戏对象的多种类型的生成控制算法;还设置为利用预设框架生成游戏对象;

3)存储器706,与通讯接口702及处理器704连接,设置为存储预设框架及生成的游戏对象。

可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。

实施例4

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以位于网络中的多个网络设备中的至少一个网络设备。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:

s1,在游戏应用客户端中获取对象配置指令,其中,对象配置指令用于配置待生成的游戏对象在三维空间的显示控制参数值;

s2,将显示控制参数值传入游戏应用客户端中的预设框架,其中,预设框架中配置有用于生成游戏对象的多种类型的生成控制算法;

s3,利用预设框架生成游戏对象。

可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述装置的全部或部分步骤。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1