Character animation data processing method, device, equipment, medium and program product

CN123015780APending Publication Date: 2026-10-30NETEASE (SHANGHAI) NETWORK CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611330961.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-28
Publication Date
2026-10-30

AI Technical Summary

Technical Problem

[0003]有鉴于此,本申请提供了一种角色动画数据处理方法、装置、设备、介质及程序产品,以解决角色动画数据处理的效率低下、准确性和一致性低的问题

Benefits of technology

[0009]本申请实施例提供的角色动画数据处理方法,基于骨骼动画数据与角色模型绑定数据进行匹配,建立骨骼动画数据与运动控制器之间的驱动关联,使得骨骼动画数据能够驱动角色模型进入初始匹配状态,为后续的批量修正提供了统一的数据基础;在此基础上,在初始匹配结果中存在姿态偏差时对目标骨骼区域执行姿态修正处理,且修正后的骨骼动画数据统一适用于角色模型的全部动作数据,使得一次修正操作即可消除因骨骼结构差异导致的姿态偏差,并同时作用于已导入的所有骨骼动画数据,避免了针对每个骨骼动画数据重复进行人工适配调整的繁琐操作,在保证修正结果一致性的同时提升烘焙前骨骼动画数据的修正效率;同时,基于导出配置信息将修正后的骨骼动画数据按资产组合关系批量烘焙并分别导出为动画文件,使得用户仅需一次配置即可完成骨骼动画数据与角色模型之间的批量组合烘焙与导出,避免人工逐一选择、配对和导出的重复劳动,提升烘焙后处理的效率。由此,将骨骼动画数据的批量姿态修正与基于资产组合关系的批量烘焙导出相结合,实现了从骨骼动画数据导入到动画文件输出的自动化与批量处理,在保证处理结果一致性和准确性的同时,提升角色动画数据批量烘焙处理的整体效率。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123015780A_ABST
    Figure CN123015780A_ABST
Patent Text Reader

Abstract

The application discloses a character animation data processing method and device, equipment, medium and program product, and relates to the technical field of computers. The method comprises the following steps: acquiring skeleton animation data of a character model and corresponding character model binding data; matching the skeleton animation data and the character model binding data to establish a driving association between the skeleton animation data and a motion controller, and obtaining an initial matching result; in response to the existence of a posture deviation in the initial matching result, performing posture correction processing on a target skeleton region to obtain corrected skeleton animation data; and based on export configuration information, batch baking the corrected skeleton animation data according to asset combination relationships and respectively exporting the corrected skeleton animation data as animation files. Thus, the automation and batch processing from the import of the skeleton animation data to the output of the animation files are realized, and the overall efficiency of the batch processing of the character animation data is improved while the consistency and accuracy of the processing results are ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, specifically to methods, apparatus, devices, media, and program products for processing character animation data. Background Technology

[0002] In the fields of 3D animation and games, the movements of virtual characters are typically captured using motion capture technology to create skeletal animations of the director. These skeletal animations are then adapted, adjusted, and bound to the character model within animation processing software to produce the final animation. Currently, this adaptation and adjustment of skeletal animations and character models is usually done manually. However, with large amounts of motion data and character models, this method is not only time-consuming and inefficient, but also prone to errors due to manual operation, resulting in low accuracy and consistency. Summary of the Invention

[0003] In view of this, this application provides a method, apparatus, device, medium, and program product for processing character animation data to solve the problems of low efficiency, low accuracy, and low consistency in character animation data processing.

[0004] Firstly, this application provides a method for processing character animation data, which further includes: Obtain the skeletal animation data of the character model and the corresponding character model binding data. The character model binding data includes the association between the skeletal hierarchy and the motion controller. Matching skeletal animation data with character model binding data establishes the driving relationship between skeletal animation data and motion controllers, yielding initial matching results. In response to the presence of pose deviations in the initial matching results, pose correction processing is performed on the target skeletal region to obtain corrected skeletal animation data. The corrected skeletal animation data is applicable to all motion data of the character model. Obtain the exported configuration information, which includes asset portfolio relationships; Based on the export configuration information, the corrected skeletal animation data is batch baked according to the asset portfolio relationship and exported as animation files respectively.

[0005] Secondly, this application provides a character animation data processing apparatus, which further includes: The data acquisition module is used to acquire the skeletal animation data of the character model and the corresponding character model binding data. The character model binding data includes the association between the skeletal hierarchy and the motion controller. The drive association module is used to match skeletal animation data with character model binding data to establish a drive association between skeletal animation data and motion controllers and obtain initial matching results. The pose correction module is used to perform pose correction processing on the target skeletal region in response to pose deviations in the initial matching results, and obtain corrected skeletal animation data. The corrected skeletal animation data is applicable to all motion data of the character model. The configuration acquisition module is used to acquire exported configuration information, which includes asset portfolio relationships. The animation export module is used to batch bake the corrected skeletal animation data according to the asset portfolio relationship and export them as animation files based on the export configuration information.

[0006] Thirdly, this application provides an electronic device, including: a memory and a processor, which are communicatively connected to each other. The memory stores computer instructions, and the processor executes the computer instructions to perform the character animation data processing method described in the first aspect or any corresponding embodiment.

[0007] Fourthly, this application provides a computer-readable storage medium storing computer instructions for causing a computer to execute the character animation data processing method described in the first aspect or any corresponding embodiment.

[0008] Fifthly, this application provides a computer program product, including computer instructions for causing a computer to execute the character animation data processing method described in the first aspect or any corresponding embodiment.

[0009] The character animation data processing method provided in this application matches skeletal animation data with character model binding data, establishing a driving association between skeletal animation data and motion controllers. This allows skeletal animation data to drive the character model into an initial matching state, providing a unified data foundation for subsequent batch corrections. Furthermore, when posture deviations exist in the initial matching results, posture correction processing is performed on the target skeletal region. The corrected skeletal animation data is uniformly applicable to all motion data of the character model, eliminating posture deviations caused by differences in skeletal structure with a single correction operation. This also applies to all imported skeletal animation data, avoiding the tedious manual adaptation and adjustment for each skeletal animation data point. This ensures consistency of correction results while improving the efficiency of skeletal animation data correction before baking. Simultaneously, based on export configuration information, the corrected skeletal animation data is batch-baked according to asset combination relationships and exported as animation files. This allows users to complete batch combination baking and export of skeletal animation data and character models with only one configuration, avoiding repetitive manual selection, pairing, and export, and improving the efficiency of post-baking processing. Therefore, by combining batch pose correction of skeletal animation data with batch baking export based on asset portfolio relationships, the process of importing skeletal animation data and outputting animation files is automated and batch-processed, improving the overall efficiency of batch baking of character animation data while ensuring the consistency and accuracy of the processing results. Attached Figure Description

[0010] To more clearly illustrate the technical solutions in the specific embodiments or related technologies of this application, the drawings used in the description of the specific embodiments or related technologies will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.

[0011] Figure 1 This is a schematic diagram illustrating an application scenario according to an embodiment of this application; Figure 2 This is a schematic diagram of the first type of character animation processing method according to an embodiment of this application; Figure 3 This is a schematic diagram of a second flowchart of a character animation processing method according to an embodiment of this application; Figure 4 This is a schematic diagram of the third process of the character animation processing method according to the embodiments of this application; Figure 5 This is a schematic diagram of the fourth process of the character animation processing method according to the embodiments of this application; Figure 6 This is a structural block diagram of a character animation processing apparatus according to an embodiment of this application; Figure 7 This is a schematic diagram of the hardware structure of an electronic device according to an embodiment of this application. Detailed Implementation

[0012] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0013] It should be noted that the information (including but not limited to user input information, such as information entered by the user into input boxes), data (including but not limited to data used for analysis, stored data, and displayed data, such as context code, all code of the current project, the service pressure corresponding to operations performed on all code of the current project, and the code development status of the current project), and signals involved in this application are all authorized by the user or fully authorized by all parties, and the collection, use, and processing of related data must comply with relevant laws, regulations, and standards. For example, the context code, operations performed on all code of the current project, the corresponding service pressure, and the code development status involved in this application were all obtained with full authorization.

[0014] The terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of this application, "multiple" means two or more, unless otherwise explicitly specified.

[0015] In the fields of 3D animation and games, the movements of virtual characters are typically captured using motion capture technology to create skeletal animations of the director. These skeletal animations are then adapted, adjusted, and bound to the character model within animation processing software to produce the final animation. Currently, this adaptation and adjustment of skeletal animations and character models is usually done manually. However, with large amounts of motion data and character models, this method is not only time-consuming and inefficient, but also prone to errors due to manual operation, resulting in low accuracy and consistency.

[0016] To address the aforementioned technical issues, this application provides a character animation processing method. It matches skeletal animation data with character model binding data, establishing a driving association between the skeletal animation data and the motion controller. This allows the skeletal animation data to drive the character model into an initial matching state, providing a unified data foundation for subsequent batch corrections. Furthermore, when posture deviations exist in the initial matching results, posture correction processing is performed on the target skeletal region. The corrected skeletal animation data is uniformly applicable to all motion data of the character model, eliminating posture deviations caused by differences in skeletal structure with a single correction operation. This also applies to all imported skeletal animation data, avoiding the tedious manual adaptation and adjustment for each skeletal animation data point. This ensures consistency of correction results while improving the efficiency of skeletal animation data correction before baking. Simultaneously, based on export configuration information, the corrected skeletal animation data is batch-baked according to asset combination relationships and exported as animation files. This allows users to complete the batch combination baking and export of skeletal animation data and character models with only one configuration, avoiding repetitive manual selection, pairing, and export, thus improving the efficiency of post-baking processing. Therefore, by combining batch pose correction of skeletal animation data with batch baking export based on asset portfolio relationships, the process of importing skeletal animation data and outputting animation files can be automated and processed in batches. This improves the overall efficiency of batch baking of character animation data while ensuring the consistency and accuracy of the processing results.

[0017] As one optional application scenario in the embodiments of this application, such as Figure 1 As shown, the system may include at least one terminal device and at least one motion capture device. Figure 1 The system is illustrated in the example, which includes a terminal device 101 and a motion capture device 102, and the motion capture device 102 is connected to the terminal device via a network 110.

[0018] The motion capture device 102 can collect skeletal animation data of a source character by performing motion capture on the source character. Motion capture can be the process of recording the motion data of a character, such as a human body or other moving object, using the motion capture device 102. The motion capture device 102 can be various devices capable of motion capture, such as a camera or inertial device. The source character can be the character that generates skeletal animation data, which can be motion data representing a human body or other moving object.

[0019] Terminal device 101 responds to the skeletal animation data and character model imported from motion capture device 102. It matches the skeletal animation data with the character model's binding data to establish a driving association between the skeletal animation data and the motion controller, obtaining an initial matching result. Responding to posture deviations in the initial matching result, it performs posture correction processing on the target skeletal region, obtaining corrected skeletal animation data. This corrected skeletal animation data is applicable to all motion data of the character model. It then acquires export configuration information, including asset combination relationships. Based on the export configuration information, it batch-baks the corrected skeletal animation data according to the asset combination relationships and exports them as animation files. Thus, by combining posture correction before baking with batch export after baking, it automates and batch processes from skeletal animation data import to animation file output, improving the overall efficiency of batch baking of character animation data while ensuring consistency and accuracy of the processing results.

[0020] According to an embodiment of this application, a method for processing character animation is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.

[0021] This embodiment provides a character animation processing method, which can be used in the aforementioned terminal device. Figure 2 This is a schematic diagram of the first type of character animation processing method according to an embodiment of this application, such as... Figure 2 As shown, the process includes the following steps: Step S201: Obtain the skeletal animation data of the character model and the corresponding character model binding data.

[0022] In this embodiment, the skeletal animation data is raw motion data obtained by motion capture equipment from a source character, such as a motion capture actor. It records the rotation and displacement information of each bone node in three-dimensional space during the performance of the source character, and is stored as bone rotation data (e.g., Euler angles or quaternions) and displacement data. It can originate from a single action segment or multiple action segments. The character model rigging data consists of pre-made skeletal rigging assets for the character model. It includes the skeletal hierarchy of the character model and the relationship between the skeletal hierarchy and motion controllers. The motion controllers are used to drive the movement of various parts of the character model and can include controllers for various parts such as the head, neck, and ankle. Users can control the posture of the character model by adjusting the parameters of the motion controllers.

[0023] Step S202: Match the skeletal animation data with the character model binding data to establish the driving relationship between the skeletal animation data and the motion controller, and obtain the initial matching result.

[0024] In this embodiment, after acquiring skeletal animation data and character model binding data, the bone nodes corresponding to the skeletal animation data are matched one-to-one with the bone nodes corresponding to the character model binding data. Since the skeletal animation data comes from the source character, while the character model binding data comes from the virtual character, there may be differences in bone naming, bone quantity, and bone hierarchy structure between the two. Therefore, matching and association are performed between the two. By matching the skeletal animation data with the character model binding data, a driving association between the skeletal animation data and the motion controller is established, and an initial matching result is obtained.

[0025] In one optional implementation, the driving association between skeletal animation data and motion controllers can be established as follows: a control rigging system is generated, wherein the control rigging system maps skeletal nodes in the character model rigging data to corresponding control nodes. This control rigging system can be a ControlRig system. The control nodes receive skeletal animation data and establish driving associations between the skeletal animation data and the control nodes. Specifically, the control rigging system is an intermediate mapping layer that receives motion data from each skeletal node in the skeletal animation data and transmits this motion data to the corresponding control nodes in the character model rigging data. The control nodes then drive the corresponding character model bones. Through matching and establishing driving associations, the skeletal animation data can drive the character model to present an initial pose corresponding to the source character, thereby obtaining an initial matching result.

[0026] Step S203: In response to the posture deviation in the initial matching result, posture correction processing is performed on the target skeletal region to obtain the corrected skeletal animation data.

[0027] In this embodiment, due to differences in skeletal proportions, bone lengths, and joint positions between the source character and the character model, the initial matching results often contain posture deviations, such as forward head tilt, neck tilt, and feet dangling. These posture deviations require posture correction. After obtaining the initial matching results, in response to the presence of posture deviations in the initial matching results, these deviations can be based on posture corrections triggered by the user, such as user-triggered corrections of head posture, or posture deviations automatically identified based on the initial matching results. In response to the presence of posture deviations in the initial matching results, posture correction processing is performed on the target skeletal region. The target skeletal region refers to the skeletal part with posture deviations in the initial matching results, which may include the head region, neck region, and foot region. The specific posture correction content can be selected by the user through a trigger operation; for example, the user can choose to correct only the head posture, only the neck posture, only the foot posture, or a combination of multiple correction strategies simultaneously. Alternatively, the posture deviations can be automatically identified based on the initial matching results. The specific operations of posture correction processing can include adjusting the rotation and displacement attributes of control nodes, etc. Different target skeletal regions can be corrected using the same or different correction operations, without specific restrictions. After posture correction processing, corrected skeletal animation data is obtained. This corrected skeletal animation data is applicable to all motion data of the character model. In other words, the above posture correction operation is uniformly applied to all imported skeletal animation data. Only one posture correction needs to be triggered, and the correction effect will be automatically applied to all motion data without the need to correct each motion data separately.

[0028] Step S204: Obtain the export configuration information.

[0029] In this embodiment, export configuration information is obtained, which can be configured by the user through a graphical user interface. The export configuration information includes asset combination relationships, which characterize the combination correspondence between character models and auxiliary elements. Auxiliary elements are auxiliary assets that can be attached to character models and form a linkage relationship with them, such as weapons, props, clothing, and accessories. These relationships can include one character model corresponding to one auxiliary element, one character model corresponding to multiple auxiliary elements, or multiple character models each corresponding to different auxiliary elements; no specific limitations are imposed here.

[0030] Step S205: Based on the export configuration information, the corrected skeletal animation data is batch baked according to the asset portfolio relationship and exported as animation files respectively.

[0031] In this embodiment, after obtaining the export configuration information, the modified skeletal animation data is batch baked and exported according to the asset combination relationship indicated by the export configuration information. Specifically, the modified skeletal animation data is batch baked, and auxiliary elements are attached to the corresponding character models according to the asset combination relationship, creating a linkage between the auxiliary elements and the character models. Finally, the character models, baked animation data, and auxiliary elements are combined into complete combination units, and each combination unit is exported as an independent animation file.

[0032] The character animation data processing method provided in this application matches skeletal animation data with character model binding data, establishing a driving association between skeletal animation data and motion controllers. This allows skeletal animation data to drive the character model into an initial matching state, providing a unified data foundation for subsequent batch corrections. Furthermore, when posture deviations exist in the initial matching results, posture correction processing is performed on the target skeletal region. The corrected skeletal animation data is uniformly applicable to all motion data of the character model, eliminating posture deviations caused by differences in skeletal structure with a single correction operation. This also applies to all imported skeletal animation data, avoiding the tedious manual adaptation and adjustment for each skeletal animation data point. This ensures consistency of correction results while improving the efficiency of skeletal animation data correction before baking. Simultaneously, based on export configuration information, the corrected skeletal animation data is batch-baked according to asset combination relationships and exported as animation files. This allows users to complete batch combination baking and export of skeletal animation data and character models with only one configuration, avoiding repetitive manual selection, pairing, and export, and improving the efficiency of post-baking processing. Therefore, by combining batch pose correction of skeletal animation data with batch baking export based on asset portfolio relationships, the process of importing skeletal animation data and outputting animation files can be automated and processed in batches. This improves the overall efficiency of batch baking of character animation data while ensuring the consistency and accuracy of the processing results.

[0033] This embodiment provides a character animation data processing method, which can be used in the aforementioned terminal device. Figure 3 This is a schematic diagram of a second type of character animation processing method according to an embodiment of this application, such as... Figure 3 As shown, the process includes the following steps: Step S301: Obtain the skeletal animation data of the character model and the corresponding character model rigging data. For details, please refer to [link to relevant documentation]. Figure 2 Step S201 of the illustrated embodiment will not be described again here.

[0034] Step S302 involves matching the skeletal animation data with the character model binding data to establish a driving relationship between the skeletal animation data and the motion controller, obtaining an initial matching result. For details, please refer to [link to relevant documentation]. Figure 2 Step S202 of the illustrated embodiment will not be described again here.

[0035] Step S303: In response to the posture deviation in the initial matching result, posture correction processing is performed on the target skeletal region to obtain the corrected skeletal animation data.

[0036] Specifically, in step S303, pose correction processing is performed on the target skeletal region, including: Step S3031: Locate the head controller and neck skeleton of the character model.

[0037] In this embodiment, the head controller is a control node in the rigging system used to drive the head movement of the character model, and the neck bone is a bone node located below the head in the character model rigging data. There is a hierarchical relationship between the head controller and the neck bone; that is, the head controller is a child node of the neck bone, and the movement of the neck bone will affect the position and posture of the head controller. After establishing the driving relationship between the skeletal animation data and the motion controller, differences in bone proportions or bone hierarchy between the source character and the character model can cause posture deviations such as forward tilting or tilting of the head in the character model. To correct these posture deviations, the head controller and neck bone are first located in the rigging system so that targeted correction operations can be performed on them separately.

[0038] Step S3032: Set the rotation attribute of the head controller to a drive mode that fully receives skeletal animation data, so that the rotational motion of the head controller is directly transmitted by the skeletal animation data.

[0039] In this embodiment, the rotation attribute of the head controller is used to control the rotation angle of the character model's head in three-dimensional space. The rotation of the head controller may be affected by the superposition of rotation data from its parent bones, such as the neck bones, resulting in interference components from the parent bones being mixed into the head rotation. To solve this problem, the rotation attribute of the head controller is set to a driving mode that fully receives skeletal animation data. In this driving mode, the rotation value of the head controller is directly taken from the rotation value of the head bones in the skeletal animation data, and is no longer affected by the superposition of rotation data from the neck bones or other parent bones. Thus, a direct correspondence is established between the rotation attribute of the head controller and the sub-data in the skeletal animation data that indicates head rotation, free from interference from intermediate levels. This ensures that the head rotation movement is directly driven and transmitted by the skeletal animation data, guaranteeing the consistency between the head rotation animation and the actual performance action of the source character.

[0040] Step S3033: Lock the displacement attribute of the head controller so that the displacement of the head controller is not affected by the displacement changes of the cervical bones.

[0041] In this embodiment, the displacement attribute of the head controller is used to control the position of the character model's head in three-dimensional space. Since the head controller is a child node of the cervical skeleton, when the cervical skeleton moves, the position of the head controller is affected, leading to undesirable head position shifts. To address this issue, the locking function in the control binding system is invoked to lock the head controller's displacement attribute at the current head position. After locking the displacement attribute, the head controller's position in three-dimensional space is fixed, and changes in the cervical skeleton's displacement no longer affect the head controller's position, thus achieving a stable head position and a correction effect where head rotation follows the skeletal animation data.

[0042] Step S3034: Correct the rotation curve data of the cervical bones to a preset reference value to eliminate posture deviations caused by differences in bone structure.

[0043] In this embodiment, the rotation curve data of the cervical skeleton records the curve of the rotation angle of the cervical skeleton changing over time under the drive of skeletal animation data. During actual motion capture, due to the skeletal structure of the source character, performance habits, or errors in the motion capture equipment, the skeletal animation data often contains subtle rotational deviations of the cervical skeleton in certain directions, such as an actor habitually lowering or tilting their head, or a slight tilt of the neck. When this skeletal animation data containing neck rotational deviations is mapped onto a character model, if the skeletal structure or posture requirements of the character model differ from those of the source character, these subtle neck rotational deviations will cause the character model to exhibit unnatural postures such as forward head tilt or a crooked neck. To solve this problem, the rotation curve data of the cervical skeleton is corrected to a preset reference value. This preset reference value can be configured to set the rotation angle value of the cervical skeleton to zero, i.e., zeroing, restoring the cervical skeleton to its initial, non-rotating state. After the correction of the neck rotation curve data, the cervical skeleton no longer contains active rotation; its posture is entirely driven by the movement of the parent bone, thereby eliminating the rotational deviation of the neck itself in the skeletal animation data. In addition, the preset baseline value can also be configured as a non-zero specific angle value according to the skeletal structure characteristics of the actual character model, so as to adapt to the character model with special posture requirements, without specific restrictions.

[0044] Step S304: Obtain the export configuration information. For details, please refer to [link / reference]. Figure 2 Step S204 of the illustrated embodiment will not be described again here.

[0045] Step S305: Based on the export configuration information, the corrected skeletal animation data is batch-baked according to asset portfolio relationships and exported as animation files respectively. For details, please refer to [link to relevant documentation]. Figure 2Step S205 of the illustrated embodiment will not be described again here.

[0046] The character animation data processing method provided in this application addresses this issue by locating the head controller and neck bones of the character model and setting the rotation attribute of the head controller to a drive mode that fully receives skeletal animation data. This ensures that head rotation during the baking process is entirely driven by motion capture data, thereby eliminating head rotation distortion caused by differences in bone proportions or mapping deviations. Simultaneously, by locking the displacement attribute of the head controller, the head position is unaffected by changes in neck bone displacement, further eliminating head position swaying caused by neck movement. Furthermore, by correcting the rotation curve data of the neck bones to a preset reference value, neck rotation deviations in the skeletal animation data caused by the actor's skeletal structure, performance habits, or equipment errors are eliminated. These head and neck corrections work together to preserve the realism of head movements in the skeletal animation data while eliminating posture deviations caused by differences in bone structure, thus improving the posture quality of the baked animation data in the head and neck regions.

[0047] This embodiment provides a character animation data processing method, which can be used in the aforementioned terminal device. Figure 4 This is a schematic diagram of the third process of the character animation data processing method according to the embodiments of this application, such as... Figure 4 As shown, the process includes the following steps: Step S401: Obtain the skeletal animation data of the character model and the corresponding character model rigging data. For details, please refer to [link to relevant documentation]. Figure 2 Step S201 of the illustrated embodiment will not be described again here.

[0048] Step S402 involves matching the skeletal animation data with the character model binding data to establish a driving relationship between the skeletal animation data and the motion controller, obtaining an initial matching result. For details, please refer to [link to details]. Figure 2 Step S202 of the illustrated embodiment will not be described again here.

[0049] Step S403: In response to the posture deviation in the initial matching result, posture correction processing is performed on the target skeletal region to obtain the corrected skeletal animation data.

[0050] Specifically, in step S403, pose correction processing is performed on the target skeletal region, including: Step S4031: Determine a reference frame for stable standing with both feet from the skeletal animation data.

[0051] In this embodiment, the skeletal animation data includes the pose information of the character model across multiple time frames. A reference frame for stable standing with both feet refers to an animation frame in the skeletal animation data where the character model is standing stably with both feet, a stable center of gravity, and good contact with the ground. This reference frame can be manually selected by the user by browsing the skeletal animation data, or it can be automatically identified by a system detection algorithm. For example, it can be determined by detecting that the rate of change of the position of the contact points between the soles of the feet and the ground is less than a preset threshold, and that the projected positions of the feet on the horizontal plane remain stable for a period of time. No specific limitations are imposed here. By obtaining a reference frame for stable standing with both feet, a baseline reference is provided for the foot pose in that frame. After subsequent adjustments to the foot pose in this reference frame, the adjustment effect can be automatically propagated to other time frames by controlling the offset layer or constraint relationship in the binding system, thus eliminating the need for frame-by-frame foot fitting adjustments.

[0052] Step S4032: Calculate the rotation compensation value of the ankle controller based on the positional relationship of the two feet in the reference frame.

[0053] In this embodiment, the ankle controller is a control node in the rigging system used to drive the ankle joint movement of the character model. The positional relationship of the two feet in the reference frame includes the position coordinates of the two feet in three-dimensional space, the relative positional relationship between the two feet, and the angular relationship between the soles of the feet and the ground. After establishing the driving association between the skeletal animation data and the motion controller, due to the differences between the foot size, sole thickness, and ground conditions of the source character and the virtual ground environment corresponding to the character model, unnatural phenomena such as the soles of the feet being suspended in the air, toes being raised, heels leaving the ground, or soles sinking into the ground may occur in the character model's feet. To solve this problem, based on the actual positional relationship of the two feet in the reference frame, the required rotational compensation value for the ankle controller is calculated, and the character model's foot plane is adjusted to a state of contact with the ground using this rotational compensation value.

[0054] In one optional implementation, a predefined foot inverse kinematics solution mechanism is invoked from the character model binding data, and the rotational compensation value of the ankle controller under the foot inverse kinematics solution mechanism is calculated based on the positional relationship of the two feet in the reference frame. The inverse kinematics solution mechanism is a calculation method that inversely derives the required rotational angles of each joint, such as the ankle and knee, based on the target position of the end effector, such as the foot. In the foot inverse kinematics solution mechanism, the ground is used as the target position constraint of the foot, and the positional relationship of the two feet in the reference frame is used as the input condition. The rotational compensation value applied by the ankle controller to achieve foot-to-ground contact is automatically calculated. This rotational compensation value enables the ankle joint to rotate the foot, thereby achieving a natural contact between the entire foot plane and the ground.

[0055] Step S4033: Adjust the ankle controller according to the rotation compensation value so that the foot plane of the character model fits the ground.

[0056] In this embodiment, after calculating the rotation compensation value of the ankle controller, the ankle controller is rotated and adjusted according to the rotation compensation value, so that the ankle joint drives the foot to rotate to a posture that is in contact with the ground. The foot plane is a plane defined by the foot, which can be determined by multiple bone nodes of the foot part of the character model, such as ankle, foot, and toe nodes. The ground is a horizontal plane in the virtual scene, such as a horizontal plane in the world coordinate system. By adjusting the ankle controller, the foot plane is rotated to a state of contact with the ground, that is, the foot is flat against the ground, and there are no gaps or overlaps between the toes, foot, and heel and the ground. After the foot posture is corrected, in the subsequent batch baking process, the correction effect will be automatically applied to all imported skeletal animation data of the character model through the constraint relationship of the control binding system. That is, the foot posture of the character model in all skeletal animation data will receive the same correction, so that foot fitting processing is not required for each motion data separately.

[0057] Step S404: Obtain the export configuration information. For details, please refer to [link to relevant documentation]. Figure 2 Step S204 of the illustrated embodiment will not be described again here.

[0058] Step S405: Based on the export configuration information, the corrected skeletal animation data is batch-baked according to asset portfolio relationships and exported as animation files respectively. For details, please refer to [link to relevant documentation]. Figure 2 Step S205 of the illustrated embodiment will not be described again here.

[0059] The character animation data processing method provided in this application provides a unified correction benchmark for foot posture correction by determining a stable reference frame for standing with both feet from the skeletal animation data. It calculates the rotation compensation value of the ankle controller based on the positional relationship of the feet in the reference frame, enabling the ankle controller to obtain precise correction amounts according to the actual deviation between the character model's feet and the ground. By adjusting the ankle controller according to the rotation compensation value, the method ensures that the character model's foot plane is in contact with the ground, eliminating unnatural phenomena such as feet dangling or overlapping caused by differences in foot size, sole thickness, and ground conditions between the source character and the character model. This results in a natural fit between the character model's feet and the ground when standing. Simultaneously, the foot posture correction operation is automatically propagated through the constraint relationships of the control binding system and uniformly applied to all imported skeletal animation data, eliminating the need for individual foot fitting processing for each action data point. This ensures consistency in correction while improving the efficiency of batch processing.

[0060] This embodiment provides a character animation data processing method, which can be used in the aforementioned terminal device. Figure 5This is a schematic diagram of the fourth process of the character animation data processing method according to the embodiments of this application, such as... Figure 5 As shown, the process includes the following steps: Step S501: Obtain the skeletal animation data of the character model and the corresponding character model rigging data. For details, please refer to [link to relevant documentation]. Figure 2 Step S201 of the illustrated embodiment will not be described again here.

[0061] Step S502 involves matching the skeletal animation data with the character model binding data to establish a driving relationship between the skeletal animation data and the motion controller, thus obtaining an initial matching result. For details, please refer to [link to relevant documentation]. Figure 2 Step S202 of the illustrated embodiment will not be described again here.

[0062] Step S503: In response to the pose deviation in the initial matching result, pose correction processing is performed on the target skeletal region to obtain the corrected skeletal animation data. For details, please refer to [link to relevant documentation]. Figure 2 Step S203 of the illustrated embodiment will not be described again here.

[0063] Step S504: Obtain the export configuration information. For details, please refer to [link to relevant documentation]. Figure 2 Step S204 of the illustrated embodiment will not be described again here.

[0064] Step S505: Based on the export configuration information, the corrected skeletal animation data is batch baked according to the asset portfolio relationship and exported as animation files respectively.

[0065] Specifically, step S505 includes: Step S5051: Bake the corrected skeletal animation data and bind it to the character model.

[0066] In this embodiment, after posture correction, the corrected skeletal animation data still exists as real-time calculated data driven by control nodes in the control rigging system, without recording specific keyframe values ​​on the control nodes. To solidify the corrected animation data into an independent standard animation asset, a baking operation is required. The baking operation involves calculating the character model's posture frame-by-frame under the corrected skeletal animation data and writing the bone rotation, displacement, and scaling data of each frame into the character model's skeleton as keyframes, forming rigging animation data independent of the skeletal animation data source and the control rigging system. After baking, the animation data no longer depends on the original skeletal animation data source or the real-time calculation of the control rigging system. Instead, it serves as a standard animation asset attached to the character model's skeletal structure, which can be directly used for subsequent export, storage, and import into the game engine.

[0067] Step S5052: Based on the asset portfolio relationship, attach the auxiliary elements to the character model.

[0068] In this embodiment, auxiliary elements refer to auxiliary assets that can be attached to a character model and form a linkage relationship with the character model, such as weapons, props, clothing accessories, etc. Asset combination relationships refer to configuration information used to characterize the combination correspondence between a character model and auxiliary elements. This can include a combination relationship of one character model corresponding to one auxiliary element, a combination relationship of one character model corresponding to multiple auxiliary elements, or a combination relationship of multiple character models each corresponding to different auxiliary elements; no specific limitations are imposed here. In the exported configuration information, the user can specify the desired asset combination relationship through selection or configuration. During the export process, according to the asset combination relationship, the corresponding auxiliary elements are attached to the corresponding character model, causing the auxiliary elements to move along with the character model.

[0069] In one optional implementation, the export configuration information further includes an export mode, which includes a first export mode and a second export mode. If the export configuration information indicates the first export mode, the asset combination relationship is a one-to-one correspondence between character models and their associated elements. Specifically, the first export mode is an export mode that automatically scans all character models, all associated elements, and all motion data in the current scene and automatically combines them. This mode is suitable for situations where the number of character models and associated elements in the scene is small, or where the user wants to export all combinations, thereby minimizing the user's configuration operations. In the first export mode, the user does not need to configure the asset combination relationship separately; instead, each character model is automatically combined with each associated element, and each combination unit is paired with each motion data, and then exported in batches as independent animation files. For example, if the current scene contains two character models, Character A and Character B, two auxiliary elements, Weapon X and Weapon Y, and two motion data sets, Take01 and Take02, then in the first export mode, eight independent animation files will be automatically exported: Take01_Character A_Weapon X, Take01_Character A_Weapon Y, Take01_Character B_Weapon X, Take01_Character B_Weapon Y, Take02_Character A_Weapon X, Take02_Character A_Weapon Y, Take02_Character B_Weapon X, and Take02_Character B_Weapon Y.

[0070] In one optional implementation, if the export configuration information indicates a second export mode, the asset portfolio relationship is obtained based on the user's configuration of the combination of auxiliary elements and role models. That is, the user specifies the desired combination relationship between roles and auxiliary elements through selection or configuration, and the export is performed according to the user-specified combination relationship. Specifically, the second export mode is a custom export mode where the user manually specifies the combination correspondence between role models and auxiliary elements through the user interface. This mode is suitable for situations where there are many role models and auxiliary elements, or where the user only needs to export specific combination relationships, thereby accurately meeting the user's customized export needs while avoiding the export of a large number of redundant files. All available role models and auxiliary elements are displayed in the user interface. This display method can be a list showing the identifiers of role models and auxiliary elements, or a graphical representation showing the specific content of role models and auxiliary elements. The user selects the role models and auxiliary elements to be combined through a selection operation in the user interface, and combines them into an asset portfolio relationship by triggering an operation that indicates the combination or pairing of role models and auxiliary elements. For example, if a user configures a combination of character A and weapon X, and a combination of character B and weapon Z, but does not configure a combination of character A and weapon Z, or character B and weapon X, then in the second export mode, only the combination files of the user-specified pairings and each action data will be exported. For example, under the two action data sets Take01 and Take02, the files Take01_Character A_Weapon X, Take02_Character A_Weapon X, Take01_Character B_Weapon Z, and Take02_Character B_Weapon Z will be exported.

[0071] Step S5053: Combine and export the character model, animation data, and auxiliary elements to obtain the animation file.

[0072] In this embodiment, after completing the baking operation and attaching auxiliary elements, the system packages and exports the character model, the baked animation data, and the attached auxiliary elements as a complete unit according to a preset file format into an independent animation file. The exported animation file includes the character model's mesh data, skeletal data, baked animation keyframe data, and the mesh and rigging data of the auxiliary elements.

[0073] The character animation data processing method provided in this application bakes and binds the corrected skeletal animation data to the character model, thus solidifying the corrected animation data into a standard animation asset independent of the motion capture data source and control binding system, facilitating subsequent storage and reuse. By attaching auxiliary elements to the character model based on asset combination relationships, flexible pairing and linkage between the character model and auxiliary elements are realized, meeting the needs of exporting combinations of multiple characters and props in complex scenes. By combining and exporting the character model, animation data, and auxiliary elements into an animation file, users only need to configure once to complete the batch combination baking and export of multiple characters, multiple actions, and multiple props, avoiding the repetitive work of manually selecting, pairing, and exporting one by one, and greatly improving the efficiency of post-baking processing.

[0074] This embodiment also provides a character animation processing apparatus for implementing the above embodiments and preferred embodiments; details already described will not be repeated. As used below, the term "module" can refer to a combination of software and / or hardware that performs a predetermined function. Although the apparatus described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.

[0075] This embodiment provides a character animation processing device, such as... Figure 6 As shown, it includes: The data acquisition module 601 is used to acquire the skeletal animation data of the character model and the corresponding character model binding data. The character model binding data includes the association between the skeletal hierarchy and the motion controller. The drive association module 602 is used to match the skeletal animation data with the character model binding data to establish the drive association between the skeletal animation data and the motion controller and obtain the initial matching result. The posture correction module 603 is used to perform posture correction processing on the target skeletal region in response to the presence of posture deviation in the initial matching result, so as to obtain corrected skeletal animation data. The corrected skeletal animation data is applicable to all motion data of the character model. Configuration acquisition module 604 is used to acquire exported configuration information, which includes asset portfolio relationships; The animation export module 605 is used to batch bake the corrected skeletal animation data according to the asset portfolio relationship and export them as animation files based on the export configuration information.

[0076] In one alternative implementation, the driver association module 602 includes: The system generation unit is used to generate a control binding system, wherein the control binding system is used to map the skeletal nodes in the character model binding data to the corresponding control nodes; The drive association unit is used to receive skeletal animation data through the control node and establish a drive association between the skeletal animation data and the control node.

[0077] In one alternative implementation, the attitude correction module 603 includes: The positioning unit is used to position the head controller and neck skeleton of the character model; The rotation attribute setting unit is used to set the rotation attribute of the head controller to a drive mode that fully receives skeletal animation data, so that the rotational motion of the head controller is directly transmitted by the skeletal animation data. The displacement attribute locking unit is used to lock the displacement attribute of the head controller so that the displacement of the head controller is not affected by the displacement changes of the neck bones.

[0078] In one alternative implementation, the attitude correction module 603 further includes: The rotation curve correction unit is used to correct the rotation curve data of the cervical bones to a preset reference value in order to eliminate posture deviations caused by differences in bone structure.

[0079] In one alternative implementation, the attitude correction module 603 includes: The reference frame determination unit is used to determine the reference frame for stable standing on both feet from the skeletal animation data; The compensation calculation unit is used to calculate the rotation compensation value of the ankle controller based on the positional relationship of the two feet in the reference frame. The rotation correction unit is used to adjust the ankle controller according to the rotation compensation value so that the character model's foot plane fits the ground.

[0080] In one optional implementation, the compensation calculation unit includes: The mechanism call subunit is used to call the predefined foot inverse kinematics solution mechanism in the character model binding data; The compensation calculation subunit is used to calculate the rotational compensation value of the ankle controller under the foot inverse kinematics solution mechanism based on the positional relationship of the two feet in the reference frame.

[0081] In one alternative implementation, the animation export module 605 includes: The baking unit is used to bake and bind the corrected skeletal animation data to the character model; Element attachment unit, used to attach auxiliary elements to the character model based on asset portfolio relationships; The export unit is used to combine and export character models, animation data, and related elements to obtain animation files.

[0082] In one optional implementation, the export configuration information further includes an export mode, which includes a first export mode and a second export mode. If the exported configuration information indicates the first export mode, the asset portfolio relationship is a one-to-one correspondence between the role model and its subordinate elements. If the exported configuration information indicates the second export mode, the asset portfolio relationship is obtained based on the user's configuration of the combination of subsidiary elements and role models.

[0083] The character animation processing apparatus provided in this application embodiment can execute the character animation processing method provided in any embodiment of this application, and has the corresponding functional modules and beneficial effects for executing the method. Further functional descriptions of the above modules and units are the same as those in the corresponding embodiments described above, and will not be repeated here.

[0084] Figure 7 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application.

[0085] The following is a detailed reference. Figure 7 The diagram illustrates a structural schematic suitable for implementing the electronic device described in the embodiments of this application. The electronic device may include a processor (e.g., a central processing unit, graphics processor, etc.) 701, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 702 or a program loaded from memory 708 into random access memory (RAM) 703. The RAM 703 also stores various programs and data required for the operation of the electronic device. The processor 701, ROM 702, and RAM 703 are interconnected via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.

[0086] Typically, the following devices can be connected to I / O interface 705: input devices 706 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 707 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; memory devices 708 including, for example, magnetic tapes, hard disks, etc.; and communication devices 709. Communication device 709 allows electronic devices to exchange data via wireless or wired communication with other devices. Although Figure 7 Electronic devices with various devices are shown, but it should be understood that it is not required to implement or have all of the devices shown, and more or fewer devices may be implemented or have instead.

[0087] Specifically, according to embodiments of this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this application include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication device 709, or installed from memory 708, or installed from ROM 702. When the computer program is executed by processor 701, it performs the functions defined in the character animation processing method of embodiments of this application.

[0088] Figure 7 The electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this application.

[0089] This application also provides a computer-readable storage medium. The methods described in this application can be implemented in hardware or firmware, or implemented as recordable on a storage medium, or implemented as computer code downloaded via a network and originally stored on a remote storage medium or a non-transitory machine-readable storage medium and then stored on a local storage medium. Thus, the methods described herein can be processed by software stored on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. The storage medium can be a magnetic disk, optical disk, read-only memory, random access memory, flash memory, hard disk, or solid-state drive, etc.; further, the storage medium can also include combinations of the above types of memory. It is understood that computers, processors, microprocessor controllers, or programmable hardware include storage components capable of storing or receiving software or computer code. When the software or computer code is accessed and executed by the computer, processor, or hardware, the character animation processing method shown in the above embodiments is implemented.

[0090] A portion of this application can be applied as a computer program product, such as computer program instructions, which, when executed by a computer, can invoke or provide the methods and / or technical solutions according to this application through the operation of the computer. Those skilled in the art will understand that the forms in which computer program instructions exist in a computer-readable medium include, but are not limited to, source files, executable files, installation package files, etc. Correspondingly, the ways in which computer program instructions are executed by a computer include, but are not limited to: the computer directly executing the instructions, or the computer compiling the instructions and then executing the corresponding compiled program, or the computer reading and executing the instructions, or the computer reading and installing the instructions and then executing the corresponding installed program. Here, the computer-readable medium can be any available computer-readable storage medium or communication medium accessible to a computer.

[0091] Although embodiments of this application have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of this application, and all such modifications and variations fall within the scope defined by the appended claims.

Claims

1. A method for processing character animation data, characterized in that, The method includes: Obtain the skeletal animation data of the character model and the corresponding character model binding data, wherein the character model binding data includes the association between the skeletal hierarchy and the motion controller; The skeletal animation data is matched with the character model binding data to establish a driving association between the skeletal animation data and the motion controller, and an initial matching result is obtained. In response to the presence of a posture deviation in the initial matching result, a posture correction process is performed on the target skeletal region to obtain corrected skeletal animation data, wherein the corrected skeletal animation data is applicable to all motion data of the character model; Obtain export configuration information, wherein the export configuration information includes asset portfolio relationships; Based on the export configuration information, the corrected skeletal animation data is batch baked according to the asset portfolio relationship and exported as animation files respectively.

2. The method according to claim 1, characterized in that, The process of establishing the driving association between the skeletal animation data and the motion controller includes: A control binding system is generated, wherein the control binding system is used to map the skeletal nodes in the character model binding data to the corresponding control nodes; The control node receives the skeletal animation data and establishes a driving association between the skeletal animation data and the control node.

3. The method according to claim 1, characterized in that, The posture correction process performed on the target skeletal region includes: Position the head controller and neck skeleton of the character model; Set the rotation attribute of the head controller to a drive mode that fully receives the skeletal animation data, so that the rotational motion of the head controller is directly transmitted by the skeletal animation data; The displacement attribute of the head controller is locked so that the displacement of the head controller is not affected by the displacement changes of the neck bones.

4. The method according to claim 3, characterized in that, The posture correction processing of the target skeletal region also includes: The rotation curve data of the cervical bones is corrected to a preset reference value to eliminate posture deviations caused by differences in bone structure.

5. The method according to claim 1, characterized in that, The posture correction process performed on the target skeletal region includes: Determine a reference frame for stable bipedal stance from the skeletal animation data; Based on the positional relationship of the two feet in the reference frame, the rotation compensation value of the ankle controller is calculated; The ankle controller is adjusted according to the rotation compensation value so that the foot plane of the character model is in contact with the ground.

6. The method according to claim 5, characterized in that, The calculation of the ankle controller's rotation compensation value based on the positional relationship of the two feet in the reference frame includes: The predefined inverse foot kinematics solution mechanism in the character model binding data is invoked; Based on the positional relationship of the two feet in the reference frame, the rotational compensation value of the ankle controller under the foot inverse kinematics solution mechanism is calculated.

7. The method according to claim 1, characterized in that, The step of batch baking and exporting the corrected skeletal animation data according to the asset portfolio relationship based on the export configuration information includes: The corrected skeletal animation data is baked and bound to the character model; Based on the aforementioned asset portfolio relationships, add auxiliary elements to the character model; The character model, the animation data, and the auxiliary elements are combined and exported to obtain the animation file.

8. The method according to claim 7, characterized in that, The export configuration information also includes export modes, which include a first export mode and a second export mode. If the export configuration information indicates the first export mode, the asset portfolio relationship is a one-to-one correspondence between the role model and the subordinate element; If the export configuration information indicates the second export mode, the asset portfolio relationship is obtained based on the user's configuration of the combination of the subordinate elements and the role model.

9. A character animation data processing device, characterized in that, The device includes: The data acquisition module is used to acquire the skeletal animation data of the character model and the corresponding character model binding data, wherein the character model binding data includes the association between the skeletal hierarchy and the motion controller; The drive association module is used to match the skeletal animation data with the character model binding data to establish a drive association between the skeletal animation data and the motion controller, and obtain an initial matching result; The posture correction module is used to perform posture correction processing on the target skeletal region in response to the presence of posture deviation in the initial matching result, so as to obtain corrected skeletal animation data, wherein the corrected skeletal animation data is applicable to all motion data of the character model; A configuration acquisition module is used to acquire exported configuration information, wherein the exported configuration information includes asset portfolio relationships; The animation export module is used to batch bake the corrected skeletal animation data according to the asset portfolio relationship and export them as animation files based on the export configuration information.

10. An electronic device, characterized in that, include: A memory and a processor are communicatively connected, the memory stores computer instructions, and the processor executes the character animation data processing method according to any one of claims 1 to 8 by executing the computer instructions.

11. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions for causing the computer to perform the character animation data processing method according to any one of claims 1 to 8.

12. A computer program product, characterized in that, Includes computer instructions for causing a computer to perform the character animation data processing method according to any one of claims 1 to 8.