骨骼模型数据的处理方法、计算机设备及存储介质技术

技术编号:26344334 阅读:22 留言:0更新日期:2020-11-13 20:56
本发明专利技术公开了一种骨骼模型数据的处理方法、计算机设备及存储介质,该方法包括:获取骨骼模型数据,骨骼模型数据包括骨骼的索引值和关键帧数据;根据骨骼的关键帧数据计算得到骨骼的局部变换矩阵;根据索引值和局部变换矩阵,生成骨骼的全局变换矩阵;根据全局变换矩阵得到骨骼模型。通过上述方式,可以将少量的骨骼模型数据进行实时计算得到骨骼的全局变换矩阵,用以生成骨骼模型,有助于减少加载骨骼动画文件的数据量,减少数据运行的内存空间,提高动画制作系统的整体性能。

【技术实现步骤摘要】
骨骼模型数据的处理方法、计算机设备及存储介质
本专利技术涉及骨骼动画
,具体涉及一种骨骼模型数据的处理方法、计算机设备及存储介质。
技术介绍
骨骼动画是一种计算机动画技术,目前,其被广泛应用于游戏引擎和影视作品制作中,一般地,目前市面上存在一些骨骼动画设计软件,例如,3Dmax和AutodeskMaya等,利用这些动画设计软件可以设计各种骨骼动画。骨骼动画的设计制作包括两个部分,分别为骨骼模型设计和网格蒙皮模型设计,而当用户设计动画游戏或者动画视频时,可以将已经设计好的骨骼动画文件数据导入到动画制作软件中,直接调用这些骨骼动画的骨骼动画文件来完成动画游戏或者动画视频的创作,但是,如果直接加载骨骼模型的所有动作帧的数据,数据量较大,占用的内存空间也相对较大,影响动画制作软件的整体性能。
技术实现思路
为了解决上述问题,本专利技术提供了一种骨骼模型数据的处理方法、计算机设备及存储介质,利用本专利技术的方法生成骨骼模型,有助于减少加载骨骼动画文件的数据量,减少数据运行的内存空间,提高动画制作系统的整体性能。第一方面,本专利技术提供一种骨骼模型数据的处理方法,该方法包括:获取骨骼模型数据,骨骼模型数据包括骨骼的索引值和关键帧数据;根据骨骼的关键帧数据计算得到骨骼的局部变换矩阵;根据索引值和局部变换矩阵,生成骨骼的全局变换矩阵;根据全局变换矩阵得到骨骼模型。第二方面,本专利技术提供一种计算机设备,该计算机设备包括互相连接的存储器和处理器:存储器用于存储计算机程序;处理器用于执行计算机程序并在执行计算机程序时实现上述的骨骼模型数据的处理方法。第三方面,本专利技术提供一种计算机存储介质,该计算机存储介质用于存储计算机程序,计算机程序在被处理器执行时,用于实现上述的骨骼模型数据的处理方法。本专利技术公开了一种骨骼模型数据的处理方法、计算机设备及存储介质,通过获取骨骼模型数据;从骨骼模型数据中提取出骨骼的关键帧数据,利用骨骼的关键帧数据生成骨骼的局部变换矩阵;然后利用骨骼模型数据中的索引值和局部变换矩阵,生成骨骼的全局变换矩阵,以得到骨骼模型。本专利技术通过获取少量的骨骼模型数据计算得到骨骼的全局变换矩阵,用以生成骨骼模型,有助于减少加载骨骼动画文件的数据量,减少数据运行的内存空间,提高动画制作系统的整体性能。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:图1是本专利技术提供的骨骼模型数据的处理方法一实施例的流程示意图;图2(a)是图1所示的实施例中树形结构的示意图;图2(b)是图2(a)所示的树形结构中骨骼的索引值的示意图;图2(c)是图2(a)所示的树形结构中骨骼的索引值的另一示意图;图3是图1所示的实施例中骨骼层次的结构示意图;图4是本专利技术提供的骨骼模型数据的处理方法另一实施例的流程示意图;图5是本专利技术提供的计算机设备一实施例的结构示意图;图6是本专利技术提供的计算机存储介质一实施例的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分的实施例,而不是全部实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性的劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。另外,虽然在装置示意图中进行了功能模块的划分,但是在某些情况下,可以以不同于装置示意图中的模块划分。本专利技术实施例提供的骨骼模型数据的处理方法、计算机设备及存储介质,可应用于骨骼动画
其中,骨骼模型数据的处理方法可以应用于终端或服务器中,其中,终端可以是笔记本电脑、台式电脑、个人数字助理等电子设备;服务器可以为独立的服务器,也可以为服务器集群。请参阅图1,图1是本专利技术提供的骨骼模型数据的处理方法一实施例的流程示意图,该方法包括:步骤11:获取骨骼模型数据。骨骼模型数据为生成对应的骨骼模型所需要的骨骼数据,包括各个骨骼的属性值。该骨骼模型数据可以为用户自行创建的数据,或者用其他软件已经设计好的可直接导入的数据,其可包括骨骼的索引值和关键帧数据。具体地,骨骼模型数据中可以包括多个骨骼,并且多个骨骼以根骨骼为根节点,其他多个骨骼以根骨骼为父节点,依次生成子节点和孙节点,形成树型结构的骨骼模型,如图2(a)所示,节点A为根节点,节点B-D为节点A的子节点,节点E为节点B的子节点(即节点E为节点A的孙节点),节点F-G为节点D的子节点(即节点F-G为节点A的孙节点);具体地,可定义某一个骨骼为根骨骼,其他骨骼为根骨骼的子孙,并可预先为骨骼模型中的每个骨骼分配一个索引值,可按照横向从左向右的顺序分配索引值,如图2(b)所示,节点A-F的索引值分别为1-7;或者也可按照纵向从左向右的顺序分配索引值,如图2(c)所示,节点A-B的索引值分别为1-2,节点E的索引值为3,节点C的索引值为4,节点D-F的索引值分别为5-7;可以理解地,也可按照其他方式分配索引值,保证每个骨骼的索引值不同即可。如图3所示,以人物骨骼模型的骨骼定义为例:以髋关节为根骨骼,对应的索引值为1,其包含三个子骨骼,分别是脊椎下部(索引值为2)、左大腿(索引值为3)以及右大腿(索引值为4);脊椎下部包含一个子骨骼:脊椎中部(索引值为5),依次往下有脊椎上部(索引值为6)、脖子(索引值为7);脖子包含三个子骨骼:头(索引值为8)、左上臂(索引值为9)和右上臂(索引值为10),左上臂的子骨骼为左前臂(索引值为11),左前臂的子骨骼为左手(索引值为12),右上臂的子骨骼为右前臂(索引值为13),右前臂的子骨骼为右手(索引值为14),其余的骨骼的索引值也可按照类似的规律进行分配,具体分配方式不作限定。通过骨骼的索引值组成一个完整的骨骼层次结构,实现通过父骨骼控制子骨骼的运动,子骨骼的位置可根据父骨骼的位置计算得到。步骤12:根据骨骼的关键帧数据计算得到骨骼的局部变换矩阵。骨骼模型数据还包括骨骼的关键帧数据,关键帧为骨骼动画中的角色运动时关键动作所处的那一帧,记录了在某个关键时间点骨骼模型的属性值。比如,骨骼动画的角色为人,人在第1秒到第5秒维持在站立姿势,从第6秒到第8秒人完成了抬起胳膊的动作,则可将第1秒、第6秒以及第8秒对应的图像帧作为关键帧。该骨骼模型数据至少包括两个关键帧对应的数据;可从骨骼模型数据中提取出骨骼的关键帧数据,然后利用该关键帧数据进行计算,从而得到骨骼的局部变换矩阵,该局部变换矩阵为对当前单本文档来自技高网
...

【技术保护点】
1.一种骨骼模型数据的处理方法,其特征在于,所述方法包括:/n获取骨骼模型数据,所述骨骼模型数据包括骨骼的索引值和关键帧数据;/n根据所述骨骼的关键帧数据计算得到所述骨骼的局部变换矩阵;/n根据所述索引值和所述局部变换矩阵,生成所述骨骼的全局变换矩阵;/n根据所述全局变换矩阵得到骨骼模型。/n

【技术特征摘要】
1.一种骨骼模型数据的处理方法,其特征在于,所述方法包括:
获取骨骼模型数据,所述骨骼模型数据包括骨骼的索引值和关键帧数据;
根据所述骨骼的关键帧数据计算得到所述骨骼的局部变换矩阵;
根据所述索引值和所述局部变换矩阵,生成所述骨骼的全局变换矩阵;
根据所述全局变换矩阵得到骨骼模型。


2.根据权利要求1所述的骨骼模型数据的处理方法,其特征在于,所述骨骼模型数据还包括所述骨骼的轴心点,所述根据所述骨骼的关键帧数据计算得到所述骨骼的局部变换矩阵的步骤,包括:
根据所述轴心点确定第一平移矩阵和第二平移矩阵;
根据所述骨骼的关键帧数据计算得到所述骨骼的中间变换矩阵;
根据所述第一平移矩阵、所述中间变换矩阵以及所述第二平移矩阵,得到所述骨骼的局部变换矩阵。


3.根据权利要求2所述的骨骼模型数据的处理方法,其特征在于,所述骨骼的关键帧数据包括所述骨骼的起点帧和终点帧,所述根据所述骨骼的关键帧数据计算得到所述骨骼的中间变换矩阵的步骤,包括:
对所述起点帧和所述终点帧进行插值计算得到中间帧,根据所述中间帧得到所述骨骼的中间变换矩阵,所述中间变换矩阵包括中间缩放矩阵、中间旋转矩阵和中间平移矩阵。


4.根据权利要求3所述的骨骼模型数据的处理方法,其特征在于,所述骨骼的关键帧数据包括所述骨骼的缩放值,所述对所述起点帧和所述终点帧进行插值计算得到中间帧,根据所述中间帧得到所述骨骼的中间变换矩阵的步骤,包括:
通过以下公式计算所述中间帧的缩放值:



scurrent=s1×(1-k)+s2×k
其中,t1、t2和tcurrent分别为所述起点帧对应的时间、所述终点帧对应的时间和所述中间帧对应的时间,s1、s2和scurrent分别为所述起点帧的缩放值、所述终点帧的缩放值和所述中间帧的缩放值,k为中间变量;
根据所述中间帧的缩放值得到所述中间缩放矩阵。


5.根据权利要求3所述的骨骼模型数据的处理方法,其特征在于,所述骨骼的关键帧数据包括所述骨骼的旋转值,所述对所述起点帧和所述终点帧进行插值计算得到中间帧,根据所述中间帧得到所述骨骼的中间变换矩阵的步骤,还包括:
通过以下公式计...

【专利技术属性】
技术研发人员:李西峙陈金先
申请(专利权)人:深圳市大富网络技术有限公司
类型:发明
国别省市:广东;44

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

1