一种角色动作生成方法和装置与流程

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

技术特征:

1.一种角色动作生成方法,其特征在于,包括:

获取角色动作的关键帧姿态信息,所述关键帧姿态信息用于描述所述角色动作的骨架特征;

根据预设算法将所述关键帧姿态信息生成骨骼动画文件,所述骨骼动画文件用于执行游戏角色的预设动作。

2.根据权利要求1所述的角色动作生成方法,其特征在于,获取角色动作的关键帧姿态信息之前,还包括:

从预设骨骼动画文件中提取关键帧动作,将关键帧动作转化为动作特征数据并存入动作特征库中,所述动作特征库包括动作特征数据、动作文件名和动作帧序号。

3.根据权利要求2所述的角色动作生成方法,其特征在于,所述根据预设算法将所述关键帧姿态信息生成骨骼动画文件,包括:

获取所述关键帧姿态信息的骨架特征结构,所述关键帧姿态信息包括动作简笔画;

a、从动作简笔画提取二维关键点,并根据所述二维关键点得到简笔画特征数据;

b、计算简笔画特征数据与所述动作特征库中动作特征数据间的特征距离,选取特征距离值最接近0值的动作特征数据作为最优特征数据,并根据动作特征库中与最优特征数据对应的运动文件名和运动帧序号得到三维骨骼姿态帧数据;

重复a步骤和b步骤,得到三维骨骼姿态帧数据集合;

根据预设的三维骨骼姿态帧数据在所述骨骼动画文件中的执行时刻和执行顺序对三维骨骼姿态帧数据进行插值运算,并得到骨骼动画文件。

4.根据权利要求2所述的角色动作生成方法,其特征在于,所述从预设骨骼动画文件中提取关键帧动作,将关键帧动作转化为动作特征数据并存入动作特征库中,包括:

基于极限姿态算法从预设骨骼动画文件中提取至少一个关键帧动作;

对于每一个关键帧动作提取多个关键运动节点,根据所述骨架特征结构对所述多个关键运动节点归一化处理得到运动特征数据;

对所述运动特征数据、所述关键帧动作信息文件名和所述与关键帧动作对应的动作帧序号建立对应关系,并存储到动作特征库中。

5.根据权利要求3所述的角色动作生成方法,其特征在于,

所述特征距离的计算公式包括:

<mrow> <mi>D</mi> <mi>i</mi> <mi>s</mi> <mo>=</mo> <mi>&Delta;</mi> <mrow> <mo>(</mo> <msub> <mi>P</mi> <mrow> <mi>s</mi> <mi>k</mi> <mi>e</mi> <mi>c</mi> <mi>t</mi> <mi>c</mi> <mi>h</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>P</mi> <mrow> <mi>k</mi> <mi>e</mi> <mi>y</mi> <mi>f</mi> <mi>r</mi> <mi>a</mi> <mi>m</mi> <mi>e</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>n</mi> </munderover> <msub> <mi>w</mi> <mi>i</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msub> <mi>e</mi> <mrow> <mi>s</mi> <mi>k</mi> <mi>e</mi> <mi>t</mi> <mi>c</mi> <mi>h</mi> <mo>_</mo> <mi>i</mi> </mrow> </msub> <msub> <mi>e</mi> <mrow> <mi>k</mi> <mi>e</mi> <mi>y</mi> <mi>f</mi> <mi>r</mi> <mi>a</mi> <mi>m</mi> <mi>e</mi> <mo>_</mo> <mi>i</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>,</mo> </mrow>

Dis表示特征距离,Psketch表示简笔画特征数据;

Pkeyframe表示动作特征数据,n表示骨架特征结构中特征节点的数量;

esketch_i表示简笔画特征数据中第i个特征节点数据;

ekeyframe_i表示动作特征数据中第i个特征节点数据;

wi表示第i个特征节点数据在简笔画特征数据的权重值。

6.根据权利要求2所述的角色动作生成方法,其特征在于,

所述骨架特征结构包括至少15个肢体单位向量。

7.一种角色动作生成装置,其特征在于,包括:

关键帧姿态信息获取模块,用于获取角色动作的关键帧姿态信息,所述关键帧姿态信息用于描述所述角色动作的骨架特征;

骨骼动画文件生成模块,用于根据预设算法将所述关键帧姿态信息生成骨骼动画文件,所述骨骼动画文件用于执行游戏角色的预设动作。

8.根据权利要求7所述的角色动作生成装置,其特征在于,还包括:

动作特征库获取模块,用于获取角色动作的关键帧姿态信息之前,从预设骨骼动画文件中提取关键帧动作,将关键帧动作转化为动作特征数据并存入动作特征库中,所述动作特征库包括动作特征数据、动作文件名和动作帧序号。

9.根据权利要求7所述的角色动作生成装置,其特征在于,所述骨骼动画文件生成模块包括:

骨架特征结构获取单元,用于获取所述关键帧姿态信息的骨架特征结构,所述关键帧姿态信息包括动作简笔画;

简笔画特征数据获取单元,用于从动作简笔画提取二维关键点,并根据所述二维关键点得到简笔画特征数据;

三维骨骼姿态帧数据获取单元,用于计算简笔画特征数据与所述动作特征库中动作特征数据间的特征距离,选取特征距离值最接近0值的动作特征数据作为最优特征数据,并根据动作特征库中与最优特征数据对应的动作文件名和动作帧序号得到三维骨骼姿态帧数据;

姿态帧数据集合获取单元,用于根据所述动作简笔画的获取次数开启或关闭所述简笔画特征数据获取单元和三维骨骼姿态帧数据获取单元,得到三维骨骼姿态帧数据集合;

插值运算执行单元,用于根据预设的三维骨骼姿态帧数据在所述骨骼动画文件中的执行时刻和执行顺序对三维骨骼姿态帧数据进行插值运算,并得到骨骼动画文件。

10.根据权利要求8所述的角色动作生成装置,其特征在于,动作特征库获取模块包括:

关键帧动作提取单元,用于基于极限姿态算法从预设骨骼动画文件中提取至少一个关键帧动作;

归一化处理单元,用于对于每一个关键帧动作提取多个关键运动节点,根据所述骨架特征结构对所述多个关键运动节点归一化处理得到运动特征数据;

对应关系建立单元,用于对所述运动特征数据、所述关键帧动作信息文件名和所述与关键帧动作对应的动作帧序号建立对应关系,并存储到动作特征库中。

11.根据权利要求9所述的角色动作生成装置,其特征在于,

所述特征距离的计算公式包括:

<mrow> <mi>D</mi> <mi>i</mi> <mi>s</mi> <mo>=</mo> <mi>&Delta;</mi> <mrow> <mo>(</mo> <msub> <mi>P</mi> <mrow> <mi>s</mi> <mi>k</mi> <mi>e</mi> <mi>c</mi> <mi>t</mi> <mi>c</mi> <mi>h</mi> </mrow> </msub> <mo>,</mo> <msub> <mi>P</mi> <mrow> <mi>k</mi> <mi>e</mi> <mi>y</mi> <mi>f</mi> <mi>r</mi> <mi>a</mi> <mi>m</mi> <mi>e</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>0</mn> </mrow> <mi>n</mi> </munderover> <msub> <mi>w</mi> <mi>i</mi> </msub> <mrow> <mo>(</mo> <mn>1</mn> <mo>-</mo> <msub> <mi>e</mi> <mrow> <mi>s</mi> <mi>k</mi> <mi>e</mi> <mi>t</mi> <mi>c</mi> <mi>h</mi> <mo>_</mo> <mi>i</mi> </mrow> </msub> <msub> <mi>e</mi> <mrow> <mi>k</mi> <mi>e</mi> <mi>y</mi> <mi>f</mi> <mi>r</mi> <mi>a</mi> <mi>m</mi> <mi>e</mi> <mo>_</mo> <mi>i</mi> </mrow> </msub> <mo>)</mo> </mrow> <mo>,</mo> </mrow>

Dis表示特征距离,Psketch表示简笔画特征数据;

Pkeyframe表示动作特征数据,n表示骨架特征结构中特征节点的数量;

esketch_i表示简笔画特征数据中第i个特征节点数据;

ekeyframe_i表示动作特征数据中第i个特征节点数据;

wi表示第i个特征节点数据在简笔画特征数据的权重值。

12.根据权利要求9所述的角色动作生成装置,其特征在于,

所述骨架特征结构包括至少15个肢体单位向量。

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