一种Maya表情编码方法及其系统技术方案

技术编号:36261516 阅读:18 留言:0更新日期:2023-01-07 09:59
本发明专利技术提出了一种Maya表情编码方法及其系统,包括如下步骤:S1:获取Maya坐标系下某个骨骼的初始位置,同时获取每个表情对应于所述骨骼的位移位置、旋转位置和缩放位置;S2:计算所述骨骼在所有表情下的最终位置;S3:后续添加新的表情时,在最终位置的基础上,添加所述新的表情对应于所述骨骼的位移位置、旋转位置和缩放位置,以获取新的最终位置;S4:在其他软件或者引擎里编写步骤S1

【技术实现步骤摘要】
一种Maya表情编码方法及其系统


[0001]本专利技术涉及表情动画制作
,尤其涉及一种Maya表情编码方法及其系统。

技术介绍

[0002]传统Maya里面制作表情动画,一般用BlendShape,或者骨骼绑定,或者BlendShape和骨骼绑定结合的方式进行。
[0003]传统BlendShape制作表情的方法有几个优点:1.精度比较高。2.其他软件互通性上比较好,比如Maya里面用BlendShape制作好了表情,可以通过fbx导入max,unreal中,它们同样识别这些BlendShape。3.输入接口清晰明了,可以在对应BlendShape节点下,找到简洁的入口。在使用ARKit标准的面部动画捕捉工具的时候,也比较好进行一一对应,比如ARKit输出openJaw+smile_left的表情组合,BlendShape只需要去激活对应的表情即可。但是BlendShape有两个缺点:1.制作周期比较长。2.如果模型面数比较多的时候,BlendShape比较消耗资源,所以很多手游角色考虑到节省资源,并不会用这种方式进行制作。
[0004]用Maya骨骼绑定制作表情的方法有几个优点:1.制作速度比较快。2.比较节省资源,比如一个张嘴的表情,如果用BlendShape的方式,游戏引擎需要对嘴部大量的点进行运动,用骨骼绑定的方式,只需要去动几根骨骼就好了。但是骨骼绑定的方式也有些缺点:1.互通性不好。现在市面上有不少工具可以完成骨骼绑定,它们通过很多复杂的关系,把这些骨骼的运动有机的组合起来,方法千变万化。比如用一些曲线的变形,去控制嘴唇的一系列骨骼运动,或者用Maya里面的约束去管理眼珠和眼皮的关系。不过这种方式制作的表情都只能在Maya里面进行制作,互通性不好,比如一个张嘴的表情,可能后面调用了曲线、约束、驱动关键帧等技术配合完成,导出fbx后,它们的这种配合关系就掉了,所以一般游戏只能把所有骨骼表情bake成逐帧动画,然后导入游戏引擎使用。如果游戏引擎里面想去改变或者调用这些表情,就无法完成了。2.输入接口模糊,在使用ARKit标准的面部动画捕捉工具的时候,也不能直观的让ARKit的输出和Maya里面的骨骼表情对应起来。
[0005]Maya骨骼绑定和BlendShape结合的方式,如中国专利CN114549709A公开了一种自定义3D虚拟形象生成系统及方法,基于Maya骨骼绑定和BlendShape形变、深度学习、特征预置参数类型、具有标准动画适应性的3D虚拟形象生成能力,可根据主观需要对生成结果进行指向性调整,虽然提高了骨骼绑定精度上的要求,但是也包含了两者的缺点,即无法互通和没有清晰的输入接口。

技术实现思路

[0006]有鉴于此,本专利技术提出了一种Maya表情编码方法及其系统,以解决现有的Maya骨骼绑定和BlendShape结合的方式无法互通和没有清晰的输入接口的问题。
[0007]本专利技术的技术方案是这样实现的:一方面,本专利技术提供了一种Maya表情编码方法,其中,包括如下步骤:
[0008]S1:获取Maya坐标系下某个骨骼的初始位置,包括初始位移位置、初始旋转位置和
初始缩放位置,同时获取每个表情对应于所述骨骼的位移位置、旋转位置和缩放位置;
[0009]S2:计算所述骨骼在所有表情下的最终位置,包括最终位移位置、最终旋转位置和最终缩放位置;
[0010]S3:后续添加新的表情时,在最终位置的基础上,添加所述新的表情对应于所述骨骼的位移位置、旋转位置和缩放位置,以获取新的最终位置;
[0011]S4:在其他软件或者引擎里编写步骤S1

S3对应的脚本,以对某个骨骼的初始位置、每个表情对应于所述骨骼的位移位置、旋转位置和缩放位置进行编辑,得到所述骨骼在所有表情下的最终位置。
[0012]在以上技术方案的基础上,优选的,所述步骤S1具体包括如下步骤:
[0013]获取某个骨骼的初始位移位置,假设有i个表情,其中i=0,1,2

n,获取每个表情对应于所述骨骼的位移位置。
[0014]在以上技术方案的基础上,优选的,所述步骤S2具体包括如下步骤:
[0015]在一个输入控制器上,添加对应的表情名字float类型属性W
i
作为输入,其中属性变化范围为0

1,计算所述骨骼在所有表情下的最终位移位置。
[0016]在以上技术方案的基础上,优选的,所述步骤S1具体包括如下步骤:
[0017]获取某个骨骼的初始旋转位置,假设有i个表情,其中i=0,1,2

n,获取每个表情对应于所述骨骼的旋转位置。
[0018]在以上技术方案的基础上,优选的,所述步骤S2具体包括如下步骤:
[0019]在一个输入控制器上,添加对应的表情名字float类型属性W
i
作为输入,其中属性变化范围为0

1,计算所述骨骼在所有表情下的最终旋转位置。
[0020]在以上技术方案的基础上,优选的,所述步骤S1具体包括如下步骤:
[0021]获取某个骨骼的初始缩放位置,假设有i个表情,其中i=0,1,2

n,获取每个表情对应于所述骨骼的缩放位置。
[0022]在以上技术方案的基础上,优选的,所述步骤S2具体包括如下步骤:
[0023]在一个输入控制器上,添加对应的表情名字float类型属性W
i
作为输入,其中属性变化范围为0

1,计算所述骨骼在所有表情下的最终缩放位置。
[0024]在以上技术方案的基础上,优选的,所述步骤S3具体包括如下步骤:
[0025]假设添加新的表情p,在最终位移位置、最终旋转位置和最终缩放位置的基础上,添加所述新的表情p对应于所述骨骼的位移位置、旋转位置和缩放位置,以获取新的最终位移位置、新的最终旋转位置和新的最终缩放位置。
[0026]另一方面,本专利技术提供一种系统,其采用了如上所述的Maya表情编码方法,其中,所述系统包括:
[0027]数据采集模块,用于获取Maya坐标系下某个骨骼的初始位置,包括初始位移位置、初始旋转位置和初始缩放位置,同时获取每个表情对应于所述骨骼的位移位置、旋转位置和缩放位置;
[0028]计算模块,用于计算所述骨骼在所有表情下的最终位置,包括最终位移位置、最终旋转位置和最终缩放位置;
[0029]更新模块,用于后续添加新的表情时,在最终位置的基础上,添加所述新的表情对应于所述骨骼的位移位置、旋转位置和缩放位置,以获取新的最终位置;
[0030]编辑模块,用于在其他软件或者引擎里编写数据采集模块、计算模块和更新模块对应的脚本,以对某个骨骼的初始位置、每个表情对应于所述骨骼的位移位置、旋转位置和缩放位置进行编辑,得到所述骨骼在所有表情下的最终位置。
[0031]本专利技术的Maya表情编码方法及其系统相对于现本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种Maya表情编码方法,其特征在于:包括如下步骤:S1:获取Maya坐标系下某个骨骼的初始位置,包括初始位移位置、初始旋转位置和初始缩放位置,同时获取每个表情对应于所述骨骼的位移位置、旋转位置和缩放位置;S2:计算所述骨骼在所有表情下的最终位置,包括最终位移位置、最终旋转位置和最终缩放位置;S3:后续添加新的表情时,在最终位置的基础上,添加所述新的表情对应于所述骨骼的位移位置、旋转位置和缩放位置,以获取新的最终位置;S4:在其他软件或者引擎里编写步骤S1

S3对应的脚本,以对某个骨骼的初始位置、每个表情对应于所述骨骼的位移位置、旋转位置和缩放位置进行编辑,得到所述骨骼在所有表情下的最终位置。2.如权利要求1所述的Maya表情编码方法,其特征在于:所述步骤S1具体包括如下步骤:获取某个骨骼的初始位移位置,假设有i个表情,其中i=0,1,2

n,获取每个表情对应于所述骨骼的位移位置。3.如权利要求2所述的Maya表情编码方法,其特征在于:所述步骤S2具体包括如下步骤:在一个输入控制器上,添加对应的表情名字float类型属性W
i
作为输入,其中属性变化范围为0

1,计算所述骨骼在所有表情下的最终位移位置。4.如权利要求1所述的Maya表情编码方法,其特征在于:所述步骤S1具体包括如下步骤:获取某个骨骼的初始旋转位置,假设有i个表情,其中i=0,1,2

n,获取每个表情对应于所述骨骼的旋转位置。5.如权利要求4所述的Maya表情编码方法,其特征在于:所述步骤S2具体包括如下步骤:在一个输入控制器上,添加对应的表情名字float类型属性W
i
作为输入,其中属性变化范围为0

...

【专利技术属性】
技术研发人员:王世勇
申请(专利权)人:武汉两点十分文化传播有限公司
类型:发明
国别省市:

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

1