动画镜像方法、装置、电子设备及存储介质与流程

文档序号:34617814发布日期:2023-06-29 12:01阅读:40来源:国知局
动画镜像方法、装置、电子设备及存储介质与流程

本发明涉及三维动画,尤其涉及一种动画镜像方法、装置、电子设备及存储介质。


背景技术:

1、在第一人称射击或第三人称射击(first personal shooter,fps)/(thirdpersonal shooter,tps)游戏中因为涉及到左手持枪和右手持枪,常常需要制作左右完全镜像的动作来适配左手和右手互相切换。除了射击类游戏,在横版游戏或者角色扮演游戏(role-playing game,rpg)等也经常需要左右完全对称的动作。

2、引擎中因为涉及到附件飘带等问题无法完全模型镜像,需要动画进行镜像,现有方案包括通过手动或引擎完成镜像。

3、通过手动镜像时,每个枪械都需要镜像动画,完全靠人力制作,工作量巨大,并且制作也无法保证完全对称,依靠重复机械流程制作镜像耗时费力。通过引擎工具镜像也会存在动作变形的问题,因为maya骨骼大多为自建,无法保证轴向统一和左右骨骼轴向完全对称,如果需要达到镜像效果需要在骨骼搭建和控制器制作上有比较严格的规范,所以目前市面上动画插件无法满足和达到镜像需求。


技术实现思路

1、本发明提供了一种动画镜像方法、装置、电子设备及存储介质,用于对不同类型的角色动作进行镜像,提高了游戏动作的镜像效率,无需制定骨骼和严格的轴向规范,提高了兼容性。

2、本发明实施例的第一方面提供一种动画镜像方法,包括:获取预置时长的原始动画,所述原始动画包括连续的多个单帧原始动画片段,其中,所述单帧原始动画片段包括目标角色在一帧内的动作,所述目标角色包括角色模型和附属物,所述附属物与所述角色模型之间具有约束关系;对所述多个单帧原始动画片段中的角色模型和附属物进行镜像,得到多个单帧镜像动画片段,其中,所述单帧镜像动画片段中的镜像轴向与所述单帧原始动画片段中的初始轴向相同;将所述多个单帧镜像动画片段合成为目标镜像动画,其中,所述目标镜像动画中包括所述目标角色在所述预置时长内的镜像动作。

3、在一种可行的实施方式中,所述对所述多个单帧原始动画片段中的角色模型和附属物进行镜像,得到多个单帧镜像动画片段,包括:获取每个单帧原始动画片段中角色模型的骨骼信息,并根据每个单帧原始动画片段的骨骼信息进行镜像,得到多个单帧角色模型镜像;基于所述约束关系将所述每个单帧原始动画片段中附属物镜像到对应的单帧角色模型镜像中,得到多个单帧镜像动画片段。

4、在一种可行的实施方式中,所述骨骼信息包括骨骼位置信息和骨骼轴向信息,所述获取每个单帧原始动画片段中角色模型的骨骼信息,并根据每个单帧原始动画片段的骨骼信息进行镜像,得到多个单帧角色模型镜像,包括:获取所述每个单帧原始动画片段中角色模型的骨骼信息,得到每个单帧原始动画片段中角色模型的骨骼位置信息和骨骼轴向信息;根据所述每个单帧原始动画片段中角色模型的骨骼位置信息进行左右镜像,得到每个单帧原始动画片段的初始镜像矩阵,其中,所述初始镜像矩阵对应角色模型的镜像位置;根据所述每个单帧原始动画片段中角色模型的骨骼轴向信息对每个所述初始镜像矩阵进行轴向调整,得到每个单帧原始动画片段的目标镜像矩阵;根据所述每个单帧原始动画片段的目标镜像矩阵生成多个单帧角色模型镜像。

5、在一种可行的实施方式中,所述骨骼信息还包括骨骼类型,所述根据所述每个单帧原始动画片段中角色模型的骨骼位置信息进行左右镜像,得到每个单帧原始动画片段的初始镜像矩阵,包括:当所述骨骼类型为左右侧骨骼时,根据任一单帧原始动画片段中角色模型的骨骼位置信息确定物体世界矩阵;根据所述物体世界矩阵、预置的物体反射矩阵和预置的物体旋转逆矩阵进行计算,得到反射后位置矩阵,并将所述反射后位置矩阵作为所述任一单帧原始动画片段的初始镜像矩阵。

6、在一种可行的实施方式中,所述骨骼信息还包括骨骼类型,所述根据所述每个单帧原始动画片段中角色模型的骨骼位置信息进行左右镜像,得到每个单帧原始动画片段的初始镜像矩阵,包括:当所述骨骼类型为中间脊柱骨骼时,根据任一单帧原始动画片段中角色模型的骨骼位置信息确定物体世界矩阵及对应的转置矩阵;根据所述对应的转置矩阵确定物体空间镜像轴;基于所述物体空间镜像轴根据所述物体世界矩阵、预置的物体反射矩阵和预置的物体旋转逆矩阵进行计算,得到反射后位置矩阵,并将所述反射后位置矩阵作为所述任一单帧原始动画片段的初始镜像矩阵。

7、在一种可行的实施方式中,所述根据所述每个单帧原始动画片段中角色模型的骨骼轴向信息对每个所述初始镜像矩阵进行轴向调整,得到每个单帧原始动画片段的目标镜像矩阵,包括:根据所述每个单帧原始动画片段中角色模型的骨骼轴向信息确定平移到原点矩阵;根据所述平移到原点矩阵和所述物体世界矩阵进行计算,得到平移原点矩阵;根据所述平移原点矩阵和预置的旋转轴反射矩阵进行轴向计算,得到旋转轴反射矩阵;获取所述角色模型的父物体矩阵,并根据所述父物体矩阵计算得到父物体逆矩阵;根据所述父物体逆矩阵、所述初始镜像矩阵、所述旋转轴反射矩阵进行计算,得到每个单帧原始动画片段的目标镜像矩阵。

8、在一种可行的实施方式中,所述附属物与所述角色模型之间具有约束关系包括:所述附属物为所述角色模型的附属骨骼,或,所述附属物为所述角色模型的挂接骨骼,或所述附属物与所述角色模型之间具有子父关系。

9、在一种可行的实施方式中,在所述将所述多个单帧镜像动画片段合并为目标镜像动画之后,还包括:对所述目标镜像动画进行调整,得到调整后的镜像动画。

10、在一种可行的实施方式中,所述对所述目标镜像动画进行调整,得到调整后的镜像动画,包括:确定所述目标镜像动画的开始帧和结束帧;将所述开始帧和结束帧设置为渐入渐出模式,得到调整后的镜像动画。

11、在一种可行的实施方式中,在所述对所述目标镜像动画进行调整,得到调整后的镜像动画之后,还包括:对所述调整后的镜像动画进行数据压缩,得到压缩后的镜像图像。

12、在一种可行的实施方式中,所述对所述调整后的镜像动画进行数据压缩,得到压缩后的镜像图像,包括:从所述调整后的镜像动画中确定至少两个重复帧,所述重复帧为具有相同类型的动画帧;将所述至少两个重复帧中确定选择一个重复帧作为保留动画帧,剩余的重复帧作为废弃动画帧;从所述调整后的镜像动画中删除所述废弃动画帧,得到压缩后的镜像动画。

13、在一种可行的实施方式中,在所述获取预置时长的原始动画之前,还包括:将所有动画层的动画合并到目标动画层级,所述目标动画层级用于指示待镜像的原始动画。

14、本发明实施例的第二方面提供了一种动画镜像装置,包括:动画获取模块,用于获取预置时长的原始动画,所述原始动画包括连续的多个单帧原始动画片段,其中,所述单帧原始动画片段包括目标角色在一帧内的动作,所述目标角色包括角色模型和附属物,所述附属物与所述角色模型之间具有约束关系;动画镜像模块,用于对所述多个单帧原始动画片段中的角色模型和附属物进行镜像,得到多个单帧镜像动画片段,其中,所述单帧镜像动画片段中的镜像轴向与所述单帧原始动画片段中的初始轴向相同;动画合成模块,用于将所述多个单帧镜像动画片段合成为目标镜像动画,其中,所述目标镜像动画中包括所述目标角色在所述预置时长内的镜像动作。

15、在一种可行的实施方式中,动画镜像模块包括:角色模型镜像单元,用于获取每个单帧原始动画片段中角色模型的骨骼信息,并根据每个单帧原始动画片段的骨骼信息进行镜像,得到多个单帧角色模型镜像;附属物镜像单元,用于基于所述约束关系将所述每个单帧原始动画片段中附属物镜像到对应的单帧角色模型镜像中,得到多个单帧镜像动画片段。

16、在一种可行的实施方式中,所述骨骼信息包括骨骼位置信息和骨骼轴向信息,角色模型镜像单元包括:信息获取子单元,用于获取所述每个单帧原始动画片段中角色模型的骨骼信息,得到每个单帧原始动画片段中角色模型的骨骼位置信息和骨骼轴向信息;左右镜像子单元,用于根据所述每个单帧原始动画片段中角色模型的骨骼位置信息进行左右镜像,得到每个单帧原始动画片段的初始镜像矩阵,其中,所述初始镜像矩阵对应角色模型的镜像位置;轴向调整子单元,用于根据所述每个单帧原始动画片段中角色模型的骨骼轴向信息对每个所述初始镜像矩阵进行轴向调整,得到每个单帧原始动画片段的目标镜像矩阵;镜像生成子单元,用于根据所述每个单帧原始动画片段的目标镜像矩阵生成多个单帧角色模型镜像。

17、在一种可行的实施方式中,所述骨骼信息还包括骨骼类型,左右镜像子单元具体用于:当所述骨骼类型为左右侧骨骼时,根据任一单帧原始动画片段中角色模型的骨骼位置信息确定物体世界矩阵;根据所述物体世界矩阵、预置的物体反射矩阵和预置的物体旋转逆矩阵进行计算,得到反射后位置矩阵,并将所述反射后位置矩阵作为所述任一单帧原始动画片段的初始镜像矩阵。

18、在一种可行的实施方式中,所述骨骼信息还包括骨骼类型,左右镜像子单元具体用于:当所述骨骼类型为中间脊柱骨骼时,根据任一单帧原始动画片段中角色模型的骨骼位置信息确定物体世界矩阵及对应的转置矩阵;根据所述对应的转置矩阵确定物体空间镜像轴;基于所述物体空间镜像轴根据所述物体世界矩阵、预置的物体反射矩阵和预置的物体旋转逆矩阵进行计算,得到反射后位置矩阵,并将所述反射后位置矩阵作为所述任一单帧原始动画片段的初始镜像矩阵。

19、在一种可行的实施方式中,轴向调整子单元具体用于:根据所述每个单帧原始动画片段中角色模型的骨骼轴向信息确定平移到原点矩阵;根据所述平移到原点矩阵和所述物体世界矩阵进行计算,得到平移原点矩阵;根据所述平移原点矩阵和预置的旋转轴反射矩阵进行轴向计算,得到旋转轴反射矩阵;获取所述角色模型的父物体矩阵,并根据所述父物体矩阵计算得到父物体逆矩阵;根据所述父物体逆矩阵、所述初始镜像矩阵、所述旋转轴反射矩阵进行计算,得到每个单帧原始动画片段的目标镜像矩阵。

20、在一种可行的实施方式中,所述附属物与所述角色模型之间具有约束关系包括:所述附属物为所述角色模型的附属骨骼,或,所述附属物为所述角色模型的挂接骨骼,或所述附属物与所述角色模型之间具有子父关系。

21、在一种可行的实施方式中,动画镜像装置还包括:动画调整模块,用于对所述目标镜像动画进行调整,得到调整后的镜像动画。

22、在一种可行的实施方式中,动画调整模块具体用于:确定所述目标镜像动画的开始帧和结束帧;将所述开始帧和结束帧设置为渐入渐出模式,得到调整后的镜像动画。

23、在一种可行的实施方式中,动画镜像装置还包括:动画压缩模块,用于对所述调整后的镜像动画进行数据压缩,得到压缩后的镜像图像。

24、在一种可行的实施方式中,动画压缩模块具体用于:从所述调整后的镜像动画中确定至少两个重复帧,所述重复帧为具有相同类型的动画帧;将所述至少两个重复帧中确定选择一个重复帧作为保留动画帧,剩余的重复帧作为废弃动画帧;从所述调整后的镜像动画中删除所述废弃动画帧,得到压缩后的镜像动画。

25、在一种可行的实施方式中,动画镜像装置还包括:动画层合并模块,用于将所有动画层的动画合并到目标动画层级,所述目标动画层级用于指示待镜像的原始动画。

26、本发明实施例的第三方面提供了一种电子设备,包括:存储器和至少一个处理器,所述存储器中存储有指令;所述至少一个处理器调用所述存储器中的所述指令,以使得所述电子设备执行上述的动画镜像方法。

27、本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的动画镜像方法。

28、本发明实施例提供的技术方案中,获取预置时长的原始动画,原始动画包括连续的多个单帧原始动画片段,其中,单帧原始动画片段包括目标角色在一帧内的动作,目标角色包括角色模型和附属物,附属物与角色模型之间具有约束关系;对多个单帧原始动画片段中的角色模型和附属物进行镜像,得到多个单帧镜像动画片段,其中,单帧镜像动画片段中的镜像轴向与单帧原始动画片段中的初始轴向相同;将多个单帧镜像动画片段合成为目标镜像动画,其中,目标镜像动画中包括目标角色在预置时长内的镜像动作。本发明实施例,对不同类型角色的角色模型和附属物的动作进行镜像,提高了游戏动作的镜像效率,无需制定骨骼和严格的轴向规范,提高了兼容性。

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