角色动画共享方法及装置、计算机设备和可读存储介质与流程

文档序号:29856103发布日期:2022-04-30 09:24阅读:70来源:国知局
角色动画共享方法及装置、计算机设备和可读存储介质与流程

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.骨骼旋转处理单元,用于针对所述待处理角色的每个角色骨骼节点,对该骨骼动画帧的骨骼偏移数据中与该角色骨骼节点功能匹配的目标骨骼节点的旋转偏移信息和所述原始姿态骨骼数据中与该角色骨骼节点对应的原始旋转信息进行乘法运算,得到所述目标姿态骨骼数据中与该角色骨骼节点对应的目标旋转信息。
29.第三方面,本技术提供一种计算机设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的计算机程序,所述处理器可执行所述计算机程序,以实现前述实施方式中任意一项所述的角色动画共享方法。
30.第四方面,本技术提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现前述实施方式中任意一项所述的角色动画共享方法。
31.在此情况下,本技术实施例的有益效果包括以下内容:
32.本技术通过获取到通用角色的涉及目标角色动作的预配骨骼动画,以及与该通用角色具有类似角色骨骼拓扑结构的待处理角色的原始姿态骨骼数据的情况下,会在预配骨骼动画的基础上直接根据该待处理角色的原始姿态骨骼数据,对该待处理角色进行骨骼姿态适配处理,得到该待处理角色的涉及目标角色动作的动作姿态骨骼数据,从而得以使不同游戏角色通过共享通用角色的骨骼动画直接生成适配的动作姿态骨骼数据,无需针对不同游戏角色单独创建合适的骨骼动画,进而大幅降低角色骨骼动画的人工创建作业量,并改善动画数据冗余状况。
33.为使本技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
34.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对
范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
35.图1为本技术实施例提供的计算机设备的组成示意图;
36.图2为本技术实施例提供的角色动画共享方法的流程示意图;
37.图3为图2中的步骤s220包括的子步骤的流程示意图;
38.图4为图3中的子步骤s222包括的子步骤的流程示意图;
39.图5为本技术实施例提供的角色动画共享装置的组成示意图;
40.图6为图5中的角色动画适配模块的组成示意图;
41.图7为图6中的骨骼姿态偏移子模块的组成示意图。
42.图标:10-计算机设备;11-存储器;12-处理器;13-通信组件;100-角色动画共享装置;110-骨骼信息获取模块;120-角色动画适配模块;121-高度比值计算子模块;122-骨骼姿态偏移子模块;1221-位置平移计算单元;1222-位置平移处理单元;1223-骨骼缩放调整单元;1224-骨骼旋转处理单元。
具体实施方式
43.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。
44.因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
45.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
46.在本技术的描述中,需要理解的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本技术中的具体含义。
47.下面结合附图,对本技术的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互结合。
48.请参照图1,图1是本技术实施例提供的计算机设备10的组成示意图。在本技术实施例中,所述计算机设备10能够使角色骨骼拓扑结构类似的至少一个游戏角色共享该角色骨骼拓扑结构所对应的通用角色的骨骼动画,并基于共享到的骨骼动画调整得到自身适配的涉及某种或某几种游戏动作的动作姿态骨骼数据,从而无需针对不同游戏角色单独创建
合适的骨骼动画,大幅降低角色骨骼的人工创建工作量,避免无意义的角色骨骼动画生成作业,有效改善动画数据冗余状况。其中,所述通用角色可以包括对应角色骨骼拓扑结构类似的多个游戏角色的所有骨骼结构,此时通用角色与这多个游戏角色也具有类似的角色骨骼拓扑结构。
49.其中,所述角色骨骼拓扑结构用于表示对应游戏角色的骨骼结构分布状况,包括多个角色骨骼节点以及相邻角色骨骼节点之间的父子关系;角色骨骼拓扑结构类似的两个游戏角色需具有功能效果一致(无论尺寸是否一致)的主体骨骼架构,该主体骨骼架构所对应的多个角色骨骼节点在两个游戏角色处各自表现出的骨骼节点父子关系保持一致,例如人类、猴子、猩猩等游戏角色各自的角色骨骼拓扑结构类似,且对应角色骨骼拓扑结构的主体骨骼架构为人型骨骼架构,且这几种游戏角色均具有功能匹配的左大腿骨骼节点。在本实施例中,所述计算机设备10可以是,但不限于,智能手机、平板电脑、笔记本电脑、服务器等。
50.在本实施例中,所述计算机设备10可以包括存储器11、处理器12、通信组件13及角色动画共享装置100。所述存储器11、所述处理器12及所述通信组件13各个元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,所述存储器11、所述处理器12及所述通信组件13这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
51.在本实施例中,所述存储器11可以是,但不限于,随机存取存储器(random access memory,ram),只读存储器(read only memory,rom),可编程只读存储器(programmable read-only memory,prom),可擦除只读存储器(erasable programmable read-only memory,eprom),电可擦除只读存储器(electric erasable programmable read-only memory,eeprom)等。其中,所述存储器11用于存储计算机程序,所述处理器12在接收到执行指令后,可相应地执行所述计算机程序。
52.在本实施例中,所述存储器11还可用于存储不同角色骨骼拓扑结构各自对应的通用角色的多种预配骨骼动画,同一通用角色的每种预配骨骼动画单独对应一种游戏动作。其中,每种角色骨骼拓扑结构对应一类具有类似行动效果的角色形体,例如具有表征人型骨骼架构的角色骨骼拓扑结构的通用角色可涉及到的角色形体包括人类、猴子、猩猩等,具有表征飞禽骨骼架构的角色骨骼拓扑结构的通用角色可涉及到的角色形体包括麻雀、鸽子、鸵鸟等,具有表征走兽骨骼架构的角色骨骼拓扑结构的通用角色可涉及到的角色形体包括老虎、狮子、麒麟、豹子等。
53.其中,某个通用角色的预配骨骼动画包括该通用角色在实现对应游戏动作的过程中于每个骨骼动画帧下的骨骼姿态相对于自身原始姿态的骨骼偏移数据,所述骨骼偏移数据用于描述对应骨骼姿态相对于原始姿态(即通用角色被创建出来时的默认姿态)的骨骼分布差异状况。单个骨骼动画帧的骨骼偏移数据包括所述通用角色的每个角色骨骼节点在该游戏骨骼动画帧内相对于对应父骨骼节点的位置偏移信息、缩放偏移信息及旋转偏移信息。
54.在本实施例中,所述处理器12可以是一种具有信号的处理能力的集成电路芯片。所述处理器12可以是通用处理器,包括中央处理器(central processing unit,cpu)、图形处理器(graphics processing unit,gpu)及网络处理器(network processor,np)、数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器
件、分立门或者晶体管逻辑器件、分立硬件组件中的至少一种。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。
55.在本实施例中,所述通信组件13用于通过网络建立所述计算机设备10与其他电子设备之间的通信连接,并通过所述网络收发数据,其中所述网络包括有线通信网络及无线通信网络。例如,所述计算机设备10可通过所述通信组件13从游戏服务器处获取需要借用角色骨骼拓扑结构类似的通用角色的骨骼动画的至少一个游戏角色的角色模型数据,并通过所述通信组件13向某个游戏终端发送所述至少一个游戏角色的某种角色动作的动作姿态骨骼数据,使所述至少一个游戏角色能够直接参照自身适配的动作姿态骨骼数据展现出相应动作效果。
56.在本实施例中,所述角色动画共享装置100包括至少一个能够以软件或固件的形式存储于所述存储器11中或者固化在所述计算机设备10的操作系统中的软件功能模块。所述处理器12可用于执行所述存储器11存储的可执行模块,例如所述角色动画共享装置100所包括的软件功能模块及计算机程序等。所述计算机设备10可通过所述角色动画共享装置100使具有类似角色骨骼拓扑结构的不同游戏角色通过共享也具有类似角色骨骼拓扑结构的通用角色的骨骼动画生成适配的动作姿态骨骼数据,无需针对不同游戏角色单独创建合适的骨骼动画,以大幅降低角色骨骼动画的人工创建作业量,改善动画数据冗余状况。
57.可以理解的是,图1所示的框图仅为所述计算机设备10的一种组成示意图,所述计算机设备10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
58.在本技术中,为确保所述计算机设备10能够使具有类似角色骨骼拓扑结构的不同游戏角色通过共享也具有类似角色骨骼拓扑结构的通用角色的骨骼动画生成适配的动作姿态骨骼数据,无需针对不同游戏角色单独创建合适的骨骼动画,以大幅降低角色骨骼动画的人工创建作业量,改善动画数据冗余状况,本技术实施例通过提供一种角色动画共享方法实现前述功能,下面对本技术提供的角色动画共享方法进行详细阐述。
59.请参照图2,图2是本技术实施例提供的角色动画共享方法的流程示意图。在本技术实施例中,所述角色动画共享方法可以包括步骤s210~步骤s220。
60.步骤s210,获取待处理角色的原始姿态骨骼数据,及通用角色的与目标角色动作匹配的预配骨骼动画,其中待处理角色与通用角色各自的角色骨骼拓扑结构类似。
61.在本实施例中,所述目标角色动作即为所述待处理角色所需表现出的游戏动作,所述原始姿态骨骼数据用于描述所述待处理角色在处于原始姿态时的骨骼分布状况,所述原始姿态骨骼数据包括所述待处理角色的每个角色骨骼节点在原始姿态下相对于父骨骼节点的原始位置信息、原始缩放信息及原始旋转信息。其中,所述待处理角色与对应通用角色各自的原始姿态可以相同也可以不同,不同待处理角色各自的原始姿态可以相同也可以不同,例如角色骨骼拓扑结构类似的猴子角色与人物角色各自的原始姿态分别是弯腰状态和站立状态。同时,所述待处理角色中每个角色骨骼节点的节点标识与所述通用角色中功能效果一致的角色骨骼节点的节点标识可以相同,也可以不同,例如左大腿骨所对应的角色骨骼节点在待处理角色中的节点标识可以为a,而左大腿骨所对应的角色骨骼节点在通用角色中的节点标识可以为a也可以为b。
62.步骤s220,在预配骨骼动画的基础上根据待处理角色的原始姿态骨骼数据对待处理角色进行骨骼姿态适配处理,得到待处理角色的与目标角色动作对应的动作姿态骨骼数据。
63.在本实施例中,当所述计算机设备10确定出具有类似角色骨骼拓扑结构的待处理角色及通用角色后,可在该通用角色的涉及目标角色动作的预配骨骼动画的基础上参照该待处理角色的原始姿态骨骼数据进行骨骼姿态适配调整,得到与该待处理角色适配的涉及目标角色动作的动作姿态骨骼数据。
64.由此,本技术可通过执行上述步骤s210及步骤s220,使具有类似角色骨骼拓扑结构的不同游戏角色通过共享也具有类似角色骨骼拓扑结构的通用角色的骨骼动画生成适配的动作姿态骨骼数据,无需针对不同游戏角色单独创建合适的骨骼动画,以大幅降低角色骨骼动画的人工创建作业量,改善动画数据冗余状况。
65.可选地,请参照图3,图3是图2中的步骤s220包括的子步骤的流程示意图。在本实施例中,所述步骤s220包括子步骤s221及子步骤s222。
66.子步骤s221,计算待处理角色与通用角色之间的角色高度比。
67.在本实施例中,所述角色高度比用于表示待处理角色在原始姿态下的角色高度与所述通用角色在原始姿态下的角色高度之间的高度比值。
68.子步骤s222,针对预配骨骼动画的每个骨骼动画帧,根据角色高度比及该骨骼动画帧所对应的骨骼偏移数据对原始姿态骨骼数据进行骨骼姿态偏移,得到待处理角色在动作姿态骨骼数据中与该骨骼动画帧对应的目标姿态骨骼数据。
69.在本实施例中,所述动作姿态骨骼数据中的每一份目标姿态骨骼数据对应所述预配骨骼动画的一个骨骼动画帧,所述动作姿态骨骼数据的目标姿态骨骼数据的总份数与所述预配骨骼动画的骨骼动画帧总数目保持一致。所述计算机设备10可通过利用所述角色高度比和待处理角色的原始姿态骨骼数据,对预配骨骼动画的每个骨骼动画帧中的表征角色骨骼姿态的骨骼偏移数据进行骨骼姿态偏移,得到所述待处理角色在动作姿态骨骼数据中的每个骨骼动画帧分别对应的目标姿态骨骼数据,从而确保最终构建出的动作姿态骨骼数据实质与待处理角色完全匹配。
70.由此,本技术可通过执行上述子步骤s221及子步骤s222,有效借用通用角色的骨骼动画构建出与角色骨骼拓扑结构类似的待处理角色完全匹配的涉及目标角色动作的动作姿态骨骼数据,改善动画数据冗余状况。
71.可选地,请参照图4,图4是图3中的子步骤s222包括的子步骤的流程示意图。在本实施例中,所述子步骤s222可以包括子步骤s2221~子步骤s2222。
72.子步骤s2221,针对通用角色的每个角色骨骼节点,将该骨骼动画帧的骨骼偏移数据中与该角色骨骼节点功能匹配的目标骨骼节点的位置偏移信息与角色高度比进行乘法运算,得到待处理角色的对应角色骨骼节点的位置平移量。
73.子步骤s2222,针对待处理角色的每个角色骨骼节点,按照计算出的该角色骨骼节点的位置平移量对原始姿态骨骼数据中与该角色骨骼节点对应的原始位置信息进行位置平移处理,得到目标姿态骨骼数据中与该角色骨骼节点对应的目标位置信息。
74.在本实施例中,在构建所述动作姿态骨骼数据的表征某个动作姿态的目标姿态骨骼数据时,需要选取所述预配骨骼动画中对应骨骼动画帧的骨骼偏移数据进行相关改造得
到。其中,单个骨骼动画帧所对应的骨骼偏移数据包括所述通用角色的每个角色骨骼节点在该骨骼动画帧内相对于父骨骼节点的位置偏移信息,所述原始姿态骨骼数据包括所述待处理角色的每个角色骨骼节点在原始姿态下相对于父骨骼节点的原始位置信息,此时可通过执行上述子步骤s2221及子步骤s2222得到所述待处理角色的每个角色骨骼节点在对应动作姿态骨骼数据包括的表征某个动作姿态的目标姿态骨骼数据中相对于父骨骼节点的目标位置信息,以确定所述待处理角色在维持目标角色动作的单个动作姿态时的骨骼位置分布状况。
75.可选地,请再次参照图4,在本实施例中,所述子步骤s222还可以包括子步骤s2223及子步骤s2224。
76.子步骤s2223,针对待处理角色的每个角色骨骼节点,对该骨骼动画帧的骨骼偏移数据中与该角色骨骼节点功能匹配的目标骨骼节点的缩放偏移信息和原始姿态骨骼数据中与该角色骨骼节点对应的原始缩放信息进行乘法运算,得到目标姿态骨骼数据中与该角色骨骼节点对应的目标缩放信息。
77.子步骤s2224,针对待处理角色的每个角色骨骼节点,对该骨骼动画帧的骨骼偏移数据中与该角色骨骼节点功能匹配的目标骨骼节点的旋转偏移信息和原始姿态骨骼数据中与该角色骨骼节点对应的原始旋转信息进行乘法运算,得到目标姿态骨骼数据中与该角色骨骼节点对应的目标旋转信息。
78.在本实施例中,单个骨骼动画帧所对应的骨骼偏移数据包括所述通用角色的每个角色骨骼节点在该骨骼动画帧内相对于父骨骼节点的缩放偏移信息及旋转偏移信息,所述原始姿态骨骼数据包括所述待处理角色的每个角色骨骼节点在原始姿态下相对于父骨骼节点的原始缩放信息及原始旋转型,此时可通过执行上述子步骤s2223及子步骤s2224得到所述待处理角色的每个角色骨骼节点在对应动作姿态骨骼数据包括的表征某个动作姿态的目标姿态骨骼数据中相对于父骨骼节点的目标缩放信息及目标旋转信息,以确定所述待处理角色在维持目标角色动作的单个动作姿态时的骨骼缩放分布状况和骨骼旋转分布状况。
79.在本技术中,为确保所述计算机设备10能够通过所述角色动画共享装置100执行上述角色动画共享方法,本技术通过对所述角色动画共享装置100进行功能模块划分的方式实现前述功能。下面对本技术提供的角色动画共享装置100的具体组成进行相应描述。
80.请参照图5,图5是本技术实施例提供的角色动画共享装置100的组成示意图。在本技术实施例中,所述角色动画共享装置100可以包括骨骼信息获取模块110及角色动画适配模块120。
81.骨骼信息获取模块110,用于获取待处理角色的原始姿态骨骼数据,及通用角色的与目标角色动作匹配的预配骨骼动画,其中待处理角色与通用角色各自的角色骨骼拓扑结构类似。
82.角色动画适配模块120,用于在预配骨骼动画的基础上根据待处理角色的原始姿态骨骼数据对待处理角色进行骨骼姿态适配处理,得到待处理角色的与目标角色动作对应的动作姿态骨骼数据。
83.可选地,请参照图6,图6是图5中的角色动画适配模块120的组成示意图。在本技术实施例中,所述预配骨骼动画包括所述通用角色在各骨骼动画帧下的骨骼姿态相对于原始
姿态的骨骼偏移数据,所述角色动画适配模块120可以包括高度比值计算子模块121及骨骼姿态偏移子模块122。
84.高度比值计算子模块121,用于计算待处理角色与通用角色之间的角色高度比。
85.骨骼姿态偏移子模块122,用于针对预配骨骼动画的每个骨骼动画帧,根据角色高度比及该骨骼动画帧所对应的骨骼偏移数据对原始姿态骨骼数据进行骨骼姿态偏移,得到待处理角色在动作姿态骨骼数据中与该骨骼动画帧对应的目标姿态骨骼数据。
86.可选地,请参照图7,图7是图6中的骨骼姿态偏移子模块122的组成示意图。在本实施例中,同一骨骼动画帧所对应的骨骼偏移数据包括通用角色的每个角色骨骼节点相对于父骨骼节点的位置偏移信息,原始姿态骨骼数据包括待处理角色的每个角色骨骼节点相对于父骨骼节点的原始位置信息,所述骨骼姿态偏移子模块122可以包括位置平移计算单元1221及位置平移处理单元1222。
87.位置平移计算单元1221,用于针对通用角色的每个角色骨骼节点,将该骨骼动画帧的骨骼偏移数据中与该角色骨骼节点功能匹配的目标骨骼节点的位置偏移信息与角色高度比进行乘法运算,得到待处理角色的对应角色骨骼节点的位置平移量。
88.位置平移处理单元1222,用于针对待处理角色的每个角色骨骼节点,按照计算出的该角色骨骼节点的位置平移量对原始姿态骨骼数据中与该角色骨骼节点对应的原始位置信息进行位置平移处理,得到目标姿态骨骼数据中与该角色骨骼节点对应的目标位置信息。
89.可选地,同一骨骼动画帧所对应的骨骼偏移数据还包括通用角色的每个角色骨骼节点相对于父骨骼节点的缩放偏移信息及旋转偏移信息,所述原始姿态骨骼数据包括待处理角色的每个角色骨骼节点相对于父骨骼节点的原始缩放信息及原始旋转信息,所述骨骼姿态偏移子模块122还可以包括骨骼缩放调整单元1223及骨骼旋转处理单元1224。
90.骨骼缩放调整单元1223,用于针对待处理角色的每个角色骨骼节点,对该骨骼动画帧的骨骼偏移数据中与该角色骨骼节点功能匹配的目标骨骼节点的缩放偏移信息和原始姿态骨骼数据中与该角色骨骼节点对应的原始缩放信息进行乘法运算,得到目标姿态骨骼数据中与该角色骨骼节点对应的目标缩放信息;
91.骨骼旋转处理单元1224,用于针对待处理角色的每个角色骨骼节点,该骨骼动画帧的骨骼偏移数据中与该角色骨骼节点功能匹配的目标骨骼节点的旋转偏移信息和原始姿态骨骼数据中与该角色骨骼节点对应的原始旋转信息进行乘法运算,得到目标姿态骨骼数据中与该角色骨骼节点对应的目标旋转信息。
92.需要说明的是,本技术实施例所提供的角色动画共享装置100,其基本原理及产生的技术效果与前述的角色动画共享方法相同。为简要描述,本实施例部分未提及之处,可参考上述的针对角色动画共享方法的描述内容。
93.在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本技术的实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中
所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
94.另外,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个可读存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的可读存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
95.综上所述,在本技术提供的角色动画共享方法及装置、计算机设备和可读存储介质中,本技术通过获取到通用角色的涉及目标角色动作的预配骨骼动画,以及与该通用角色具有类似角色骨骼拓扑结构的待处理角色的原始姿态骨骼数据的情况下,会在预配骨骼动画的基础上直接根据该待处理角色的原始姿态骨骼数据,对该待处理角色进行骨骼姿态适配处理,得到该待处理角色的涉及目标角色动作的动作姿态骨骼数据,从而得以使不同游戏角色通过共享通用角色的骨骼动画直接生成适配的动作姿态骨骼数据,无需针对不同游戏角色单独创建合适的骨骼动画,进而大幅降低角色骨骼动画的人工创建作业量,并改善动画数据冗余状况。
96.以上所述,仅为本技术的各种实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应当以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1