虚拟对象显示方法、装置、电子设备及存储介质制造方法及图纸

技术编号:21816823 阅读:23 留言:0更新日期:2019-08-10 13:21
本发明专利技术公开了一种虚拟对象显示方法、装置、电子设备及存储介质,属于计算机技术领域。所述方法包括:获取多个虚拟对象中每个虚拟对象对应的多个动画帧和每个动画帧的权重;通过图像处理器,按照每个动画帧的权重,并行对多个虚拟对象对应的多个动画帧进行融合,得到多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据;根据多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据,在图形用户界面中显示多个虚拟对象。本发明专利技术通过图像处理器并行对多个虚拟对象进行动画帧融合,而不是由中央处理器串行处理,有效减少中央处理器的处理负担,避免中央处理器过载问题,提高了处理效率,进而提高该虚拟对象显示过程的显示效率,提高了该虚拟对象的显示效果。

Virtual Object Display Method, Device, Electronic Equipment and Storage Media

【技术实现步骤摘要】
虚拟对象显示方法、装置、电子设备及存储介质
本专利技术涉及计算机
,特别涉及一种虚拟对象显示方法、装置、电子设备及存储介质。
技术介绍
随着计算机技术的发展和终端功能的多样化,在终端上能够进行的游戏种类越来越多,在一些电子游戏中,需要在图形用户界面中显示多个虚拟对象,在对虚拟对象进行显示时,可以对虚拟对象的由动画驱动的骨骼模型进行显示。对于任一帧,通常需要确定该虚拟对象的骨骼模型中每个骨骼的位姿数据,来确定该虚拟对象在该任一帧中的姿态。目前,虚拟对象显示方法通常是:对于多个虚拟对象中任一个虚拟对象,通过中央处理器,获取该虚拟对象对应的多个动画帧,再通过中央处理器,对该虚拟对象对应的多个动画帧进行融合,得到当前帧中该虚拟对象的骨骼模型中每个骨骼的位姿数据,通过图像处理器,对该虚拟对象进行显示。每处理结束一个虚拟对象,即可继续处理下一个虚拟对象,直至对该多个虚拟对象均处理结束。上述虚拟对象显示方法采用了由中央处理器逐个确定多个虚拟对象的骨骼模型中每个骨骼的位姿数据的串行处理方式,对多个动画帧进行融合的步骤耗时较长,随着虚拟对象的数量的增加,中央处理器对多个虚拟对象的处理时间则大幅度增加,从而可能出现中央处理器过载的问题,上述虚拟对象显示方法的显示效率低,显示效果差。
技术实现思路
本专利技术实施例提供了一种虚拟对象显示方法、装置、电子设备及存储介质,可以解决相关技术中中央处理器过载、显示效率低和显示效果差的问题。所述技术方案如下:一方面,提供了一种虚拟对象显示方法,所述方法包括:获取多个虚拟对象中每个虚拟对象对应的多个动画帧和每个动画帧的权重,所述每个动画帧包括虚拟对象的骨骼模型中每个骨骼的位姿数据;通过图像处理器,按照所述每个动画帧的权重,并行对所述多个虚拟对象对应的多个动画帧进行融合,得到所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据;根据所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据,在图形用户界面中显示所述多个虚拟对象。一方面,提供了一种虚拟对象显示装置,所述装置包括:获取模块,用于获取多个虚拟对象中每个虚拟对象对应的多个动画帧和每个动画帧的权重,所述每个动画帧包括虚拟对象的骨骼模型中每个骨骼的位姿数据;融合模块,用于通过图像处理器,按照所述每个动画帧的权重,并行对所述多个虚拟对象对应的多个动画帧进行融合,得到所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据;显示模块,用于根据所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据,在图形用户界面中显示所述多个虚拟对象。一方面,提供了一种电子设备,所述电子设备包括一个或多个处理器和一个或多个存储器,所述一个或多个存储器中存储有至少一条指令,所述指令由所述一个或多个处理器加载并执行以实现所述虚拟对象显示方法所执行的操作。一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现所述虚拟对象显示方法所执行的操作。本专利技术实施例通过获取多个虚拟对象对应的多个动画帧和权重,通过图像处理器并行对该多个虚拟对象进行动画帧融合,得到每个虚拟对象的骨骼模型中每个骨骼的目标位姿数据,从而将其作为显示多个虚拟对象的依据,对多个虚拟对象进行显示,该过程中通过图像处理器并行对多个虚拟对象进行动画帧融合,而无需由中央处理器逐个获取动画帧和权重、动画帧融合和显示,可以有效减少中央处理器的处理负担,避免出现中央处理器过载的问题,可以大幅度提高处理效率,进而提高该虚拟对象显示过程的显示效率,也提高了该虚拟对象的显示效果。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的一种虚拟对象显示的示意图;图2是本专利技术实施例提供的一种虚拟对象显示方法的流程图;图3是本专利技术实施例提供的一种动画树的示意图;图4是本专利技术实施例提供的一种动画树的示意图;图5是本专利技术实施例提供的一种第二贴图的获取过程的示意图;图6是本专利技术实施例提供的一种从第二贴图中获取多个动画帧的过程的示意图;图7是本专利技术实施例提供的一种多个骨骼的示意图;图8是本专利技术实施例提供的一种动画帧融合过程的示意图;图9是本专利技术实施例提供的一种动画帧和权重写入缓冲区的过程的示意图;图10是本专利技术实施例提供的一种多个虚拟对象的显示过程的示意图;图11是本专利技术实施例提供的一种虚拟对象显示方法的流程图;图12是本专利技术实施例提供的一种多个虚拟对象的显示示意图;图13是本专利技术实施例提供的一种虚拟对象显示装置的结构示意图;图14是本专利技术实施例提供的一种电子设备的结构示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进一步地详细描述。本专利技术实施例主要涉及电子游戏或者模拟训练场景,以电子游戏场景为例,用户可以提前在该终端上进行操作,该终端检测到用户的操作后,可以下载电子游戏的游戏配置文件,该游戏配置文件可以包括该电子游戏的应用程序、界面显示数据或虚拟场景数据等,以使得该用户在该终端上登录电子游戏时可以调用该游戏配置文件,对电子游戏界面进行渲染显示。用户可以在终端上进行触控操作,该终端检测到触控操作后,可以确定该触控操作所对应的游戏数据,并对该游戏数据进行渲染显示,该游戏数据可以包括虚拟场景数据、该虚拟场景中虚拟对象的行为数据等。本专利技术涉及到的虚拟场景可以用于模拟一个三维虚拟空间,也可以用于模拟一个二维虚拟空间,该三维虚拟空间或二维虚拟空间可以是一个开放空间。该虚拟场景可以用于模拟现实中的真实环境,例如,该虚拟场景中可以包括天空、陆地、海洋等,该陆地可以包括沙漠、城市等环境元素,用户可以控制虚拟对象在该虚拟场景中进行移动,该虚拟对象可以是该虚拟场景中的一个虚拟的用于代表用户的虚拟形象,也可以是该虚拟场景中的一个虚拟的用于代表与用户交互的角色的虚拟形象。该虚拟形象可以是任一种形态,例如,人、动物等,本专利技术对此不限定。该虚拟场景中可以包括多个虚拟对象,每个虚拟对象在虚拟场景中具有自身的形状和体积,占据虚拟场景中的一部分空间。以射击类游戏为例,用户可以控制虚拟对象在该虚拟场景的天空中自由下落、滑翔或者打开降落伞进行下落等,在陆地上中跑动、跳动、爬行、弯腰前行等,也可以控制虚拟对象在海洋中游泳、漂浮或者下潜等,当然,用户也可以控制虚拟对象乘坐载具在该虚拟场景中进行移动,在此仅以上述场景进行举例说明,本专利技术实施例对此不作具体限定。用户也可以控制虚拟对象通过兵器与其他虚拟对象进行战斗,该兵器可以是冷兵器,也可以是热兵器,本专利技术对此不作具体限定。当然,还可以为其他种类的电子游戏中的场景,例如,角色扮演类游戏等,或可以为其他模拟场景,本专利技术实施例提供的方法的应用场景并不限定。例如,如图1所示,终端可以在虚拟场景中显示多个虚拟对象。骨骼动画:模型动画的一种,指一系列类似生物骨骼层级关系的矩阵列,骨骼动画中每一个动画帧存储有每一个骨骼的位置和旋转等信息,即这一个骨骼在这一个动画帧中的位姿,连续一段时间内的多个动画帧则形成了每一个骨骼在这段时间内的运动数据,本文档来自技高网...

【技术保护点】
1.一种虚拟对象显示方法,其特征在于,所述方法包括:获取多个虚拟对象中每个虚拟对象对应的多个动画帧和每个动画帧的权重,所述每个动画帧包括虚拟对象的骨骼模型中每个骨骼的位姿数据;通过图像处理器,按照所述每个动画帧的权重,并行对所述多个虚拟对象对应的多个动画帧进行融合,得到所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据;根据所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据,在图形用户界面中显示所述多个虚拟对象。

【技术特征摘要】
1.一种虚拟对象显示方法,其特征在于,所述方法包括:获取多个虚拟对象中每个虚拟对象对应的多个动画帧和每个动画帧的权重,所述每个动画帧包括虚拟对象的骨骼模型中每个骨骼的位姿数据;通过图像处理器,按照所述每个动画帧的权重,并行对所述多个虚拟对象对应的多个动画帧进行融合,得到所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据;根据所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据,在图形用户界面中显示所述多个虚拟对象。2.根据权利要求1所述的方法,其特征在于,所述通过图像处理器,按照所述每个动画帧的权重,并行对所述多个虚拟对象对应的多个动画帧进行融合,得到所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据,包括:根据所述多个虚拟对象的数量,通过所述图像处理器的多个并行通道,按照所述每个动画帧的权重,并行对所述多个虚拟对象对应的多个动画帧进行融合,得到所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据,每个并行通道用于对一个虚拟对象对应的多个动画帧进行融合。3.根据权利要求1或2所述的方法,其特征在于,所述按照所述每个动画帧的权重,并行对所述多个虚拟对象对应的多个动画帧进行融合,得到所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据,包括:对于所述多个虚拟对象中每个虚拟对象,按照所述每个虚拟对象对应的多个动画帧的权重,对所述每个虚拟对象对应的多个动画帧中骨骼模型中各个骨骼的位姿数据进行加权,得到所述每个虚拟对象的骨骼模型中每个骨骼的目标位姿数据。4.根据权利要求1所述的方法,其特征在于,所述按照所述每个动画帧的权重,并行对所述多个虚拟对象对应的多个动画帧进行融合,得到所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据,包括:根据所述每个动画帧的权重,将权重最大的目标数量的动画帧作为所述每个虚拟对象对应的目标动画帧;按照所述目标动画帧的权重,对所述每个虚拟对象对应的目标动画帧进行融合,得到所述每个虚拟对象的骨骼模型中每个骨骼的目标位姿数据。5.根据权利要求1所述的方法,其特征在于,所述通过图像处理器,按照所述每个动画帧的权重,并行对所述多个虚拟对象对应的多个动画帧进行融合,得到所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据之后,所述方法还包括:将所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据存储于第一贴图中;所述根据所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据,在图形用户界面中显示所述多个虚拟对象,包括:对所述第一贴图进行采样,以在图形用户界面中显示所述多个虚拟对象。6.根据权利要求5所述的方法,其特征在于,所述将所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据存储于第一贴图中,包括:将所述多个虚拟对象的骨骼模型中每个骨骼的目标位姿数据与所述多个虚拟对象的标识信息对应存储于第一贴图中;所述对所述第一贴图进行采样,以在图形用户界面中显示所述多个虚拟对象,包括:根据所述多个虚拟对象的标识信息,对所述第一贴图进行采样,以在图形用户界面中显示所述多个虚拟对象。7.根据权利要求6所述的方法,其特征在于,所述根据所述多个虚拟对象的标识信息,对所述第一贴图进行采样,以在图形用户界面中显示所述多个虚拟对象,包括:对绘制命令进行实例化,得到对象,所述绘制命令包括所述多个虚拟对象的标识信息;通过所述对象,执行所述根据所述多个虚拟对象的标识信息,对所述第一贴图进行采样,以在图形用户界面中显示所述多个虚拟对象的步骤。8.根据权利要...

【专利技术属性】
技术研发人员:丁志轩
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东,44

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

1