A game animation action automatic generation method based on role skeleton data

CN123015778APending Publication Date: 2026-10-30SHANGHAI DOYUE NETWORK TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

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

AI Technical Summary

Technical Problem

游戏角色执行起跳、急停、翻滚、受击或者快速攻击等动作时,根节点位置和多个骨骼关节会在短时间内连续发生较大变化,因而真实快速动作与骨骼节点跳变、节点对应错误或者数据丢失均可能产生较大的预测偏差,现有方法通常直接根据预测偏差或者固定阈值删除、平滑或替换对应动作片段,难以区分真实快速动作与异常骨骼数据,容易错误排除具有动作转换意义的动作片段;现有动作处理方法通常仅比较相邻骨骼姿态或者动作片段之间的相似程度,缺少对快速变化片段的前骨骼姿态、中间主要骨骼链关节转动变化顺序和后骨骼姿态进行联合判断,因而难以利用相同前—中—后动作结构是否重复出现,验证预测偏差较大的骨骼变化是否为可重复执行的真实快速动作;现有预测偏差阈值通常根据初始数据固定设置,未将经重复出现的动作结构验证的真实快速动作作为反馈数据调整筛选条件,难以适应角色骨骼结构、动作类型及后续新增数据的变化

Benefits of technology

本发明利用运动模型得到动作片段的预测偏差,并将预测偏差超过预设值的动作片段作为进一步分析对象,而不直接将其确定为异常数据,从而避免将起跳、急停、翻滚或者快速攻击等真实快速动作错误排除。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123015778A_ABST
    Figure CN123015778A_ABST
Patent Text Reader

Abstract

The application discloses a game animation action automatic generation method based on role skeleton data, relates to the technical field of game animation generation, and comprises the following steps: carrying out node correspondence and state combination on role skeleton data collected at the same time to obtain a skeleton posture; a motion model is used to determine a prediction deviation of an action segment; from the action segment whose prediction deviation exceeds a preset value, a candidate segment of rapid change is recognized according to continuous and collaborative changes of a skeleton position and a rotation state; the candidate segment and the front and rear action segments are combined to form an action structure, effective rapid change segments are determined according to the repetition of the action structure and the skeleton connection rationality, and an action conversion relationship is established; the determined action structure is matched in all subsequent action segments, the preset value is adjusted according to the prediction deviation and the skeleton change of the matched segment, and a target segment is selected to generate a game animation action.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of game animation generation technology, and more specifically, to a method for automatically generating game animation actions based on character skeletal data. Background Technology

[0002] With the development of 3D games, virtual reality, and digital character technologies, game character animations are typically generated through motion capture, keyframe creation, procedural animation, or combinations of existing action segments. Existing animation processing methods based on character skeletal data generally record the position of the root node, the rotation state of the root node, and the rotation states of multiple bone joints according to the acquisition time, and divide the continuously acquired character skeletal data into different action segments. Some methods identify action boundaries by comparing the positional or rotational changes between adjacent bone postures, while others learn the variation patterns of normal bone postures through motion prediction models and then identify abnormal action segments based on the difference between the predicted and actual bone postures. For segments with large prediction deviations, large changes in bone nodes, or short action durations, existing methods typically treat them as anomalous data, acquisition noise, or unstable actions, deleting, smoothing, or replacing them. Subsequently, action features are extracted from the remaining action segments to build an animation motion library, so that the corresponding character skeletal data can be called when the game character performs a target action.

[0003] The existing technology has the following shortcomings: When game characters perform actions such as jumping, stopping, rolling, being hit, or attacking quickly, the root node position and multiple skeletal joints undergo significant and continuous changes within a short period. Therefore, the actual rapid movements, skeletal node jumps, incorrect node correspondences, or data loss can all lead to substantial prediction bias. Existing methods typically delete, smooth, or replace corresponding action segments directly based on prediction bias or fixed thresholds, making it difficult to distinguish between actual rapid movements and abnormal skeletal data, and easily resulting in the incorrect exclusion of action segments with meaningful transitions. Existing motion processing methods usually only compare the similarity between adjacent bone postures or action segments, lacking a joint judgment on the pre-skeletal posture, the sequence of major skeletal chain joint rotations, and the post-skeletal posture of rapidly changing segments. Therefore, it is difficult to verify whether bone changes with large prediction biases are repeatable actual rapid movements by checking for repetitive occurrences of the same pre-, mid-, and post-movement structures. Existing prediction bias thresholds are usually fixed based on initial data, failing to use verified actual rapid movements with recurring action structures as feedback data to adjust the filtering criteria, making it difficult to adapt to changes in character skeletal structure, action types, and subsequent data additions.

[0004] To address the above problems, this invention proposes a solution. Summary of the Invention

[0005] To overcome the aforementioned deficiencies of the prior art, embodiments of the present invention provide a method for automatically generating game animation actions based on character skeletal data, in order to solve the problems mentioned in the background art.

[0006] To achieve the above objectives, the present invention provides the following technical solution: A method for automatically generating game animation actions based on character skeletal data, including the following steps; Step 1: Perform bone node mapping and state combination on the character skeleton data at the same acquisition time to obtain the bone pose at the corresponding acquisition time, establish a motion model for subsequent bone pose prediction, and obtain the prediction deviation of each action segment based on the difference between the predicted bone pose and the actual bone pose. Step 2: From action segments where the prediction deviation exceeds a preset value, identify rapidly changing candidate segments based on changes in bone position and rotation state in the character skeleton data; Step 3: Based on whether the action structure formed by the candidate rapid change segments and the action segments before and after them appears repeatedly, determine the effective rapid change segments, retain the effective rapid change segments to establish action transformation relationships, and exclude the remaining action segments from the data for establishing the current action transformation relationships. Step 4: Obtain subsequent character skeletal data. Without being limited by the current preset values, use the identified recurring motion structures to match subsequent motion segments. Adjust the preset values ​​based on the prediction deviation of the matched segments and skeletal changes.

[0007] In a preferred embodiment, the corresponding bone nodes representing the same part of the character in the bone data of different characters are determined according to the bone node identifier and the parent-child connection relationship, the character orientation and bone ratio are unified, and the root node position, root node rotation state and the rotation state of each bone joint at the same acquisition time are combined into bone posture according to the unified bone node order. When the time interval between the acquisition of skeletal data of adjacent characters exceeds the allowed interval, a time break result is generated at the corresponding position.

[0008] In a preferred embodiment, segmenting action fragments and obtaining prediction bias includes: The bone posture difference results are obtained based on the root node orientation difference and the corresponding bone joint rotation difference. Bone posture groups are formed based on the bone posture difference results. Bone postures belonging to the same bone posture group and collected in consecutive time are divided into the same action segment. A motion model is established using the current skeleton pose and its change relative to the previous acquisition time as input, and the skeleton pose at the next acquisition time as the desired output. The normalized difference between the predicted skeleton pose and the corresponding skeleton pose is defined as the prediction difference. The prediction difference within the continuous judgment time window is statistically analyzed, and the largest statistical result within the action segment is defined as the prediction bias of the corresponding action segment. The preset values ​​are determined based on the prediction bias distribution of historical motion segments used to build the motion model.

[0009] In a preferred embodiment, determining rapidly changing candidate segments includes: In motion segments where the prediction deviation exceeds a preset value, skeletal poses where the prediction difference continuously exceeds the preset value and the acquisition time is adjacent are merged into a continuous out-of-limit range. The limits of joint rotation variation are determined based on motion segments whose predicted deviation does not exceed a preset value. When at least two adjacent bone joints in the same major skeletal chain within a continuous out-of-limit range exceed the joint rotation change limit and undergo rotation changes in a corresponding order, and the rotation changes correspond in time to the changes in the root node position or the changes in the position of the corresponding limb end bone node, the continuous out-of-limit range is identified as a candidate segment for rapid change.

[0010] In a preferred embodiment, forming the action structure includes: Action segments that precede and are temporally continuous with rapidly changing candidate segments are identified as preceding action segments, and action segments that follow and are temporally continuous with rapidly changing candidate segments are identified as following action segments. The main skeletal pose groups of the preceding and following action segments are determined separately, and the main skeletal pose groups of the preceding action segment, the intermediate change description results of the rapidly changing candidate segments, and the main skeletal pose groups of the following action segment are combined into an action structure. The intermediate change description results include the main skeletal chain, the sequence of joint rotation changes, the main movement direction of the root node, and the normalized skeletal change sequence.

[0011] In a preferred embodiment, determining effective rapid change segments includes: When the current and subsequent action segments belong to the same main skeletal pose group, the main skeletal chains, the sequence of joint rotation changes, and the main direction of root node movement are the same, and the difference between the normalized skeletal change sequences is not greater than the action structure matching limit, the corresponding action structures are determined to be the same action structures. When the number of identical motion structures from non-overlapping acquisition time ranges reaches the repetition limit, and the corresponding rapid change candidate fragment passes the skeleton connection rationality check, it is determined as a valid rapid change fragment. Rapidly changing candidate segments that do not reach the repetition limit or fail the skeletal connection rationality check are not used to establish the current action transition relationship; The examination of the rationality of skeletal connection includes at least the examination of the changes in the length of the father and son bones and the range of motion of the bone joints.

[0012] In a preferred embodiment, establishing the action transition relationship includes: The main skeletal pose group of the preceding action segment is taken as the starting state, the main skeletal pose group of the following action segment is taken as the target state, and the skeletal pose sequence arranged according to the acquisition time in the effective rapid change segment is taken as the transformation content from the starting state to the target state. Record effective rapid change segments with the same starting state and target state in the same action transition relationship, and associate and record their main skeletal chain, the main movement direction of the root node, the segment duration and the normalized skeletal change sequence, so that one or more effective rapid change segments can correspond to the same starting state and target state.

[0013] In a preferred embodiment, the target main skeletal chain, the target root node's main movement direction, and the target action duration range are determined based on the target game action instructions. From the action transition relationship, select effective fast-changing segments whose main skeletal chain, root node main movement direction, and segment duration match the target game action command to obtain candidate call segments; When the same action transition relationship includes multiple candidate call segments, the association between each candidate call segment and its corresponding starting state is preserved.

[0014] In a preferred embodiment, selecting the target fragment includes: Based on the differences in bone posture between the current bone posture and each bone posture group, determine the bone posture group to which the current bone posture belongs; Candidate callable segments are identified as those whose main skeletal pose group of the previous action segment is the same as the skeletal pose group of the current skeletal pose. When there is only one callable fragment, it is designated as the target fragment; when there are multiple callable fragments, the target fragment is selected based on the degree of matching between the main skeletal chain, the main movement direction of the root node, and the fragment duration with the target game action command.

[0015] In a preferred embodiment, the output skeletal pose sequence includes: Read the root node position change, root node rotation state and each bone joint rotation state in the target segment according to the acquisition time sequence, overlay the root node position change onto the current character's root node position, and combine it with the root node rotation state and each bone joint rotation state to form the animation bone posture. When the duration of the target action differs from the original duration of the target segment, the output time of each animation bone posture is adjusted proportionally to the two. For the output time located between adjacent acquisition times, pose interpolation is performed based on the root node state and the state of each bone joint corresponding to the adjacent acquisition time, and the resulting animation bone poses are sequentially output to the bone drive component of the game character to generate game animation actions.

[0016] The technical effects and advantages of the game animation motion automatic generation method based on character skeletal data of the present invention are as follows: This invention utilizes motion models to obtain the prediction deviation of motion segments, and takes motion segments with prediction deviations exceeding preset values ​​as objects for further analysis, rather than directly identifying them as abnormal data, thereby avoiding the incorrect exclusion of real fast actions such as jumps, sudden stops, rolls, or rapid attacks.

[0017] By combining the changes in the root node position, the rotational changes of adjacent bone joints in the main skeletal chain, and the positional changes of bone nodes at the limb ends, rapid change candidate segments with continuous skeletal changes are identified. Then, the rapid change candidate segments are combined with their preceding and following action segments to form an action structure. Based on whether the main skeletal posture groups of the preceding action segment match each other, whether the intermediate skeletal changes match each other, and whether the main skeletal posture groups of the following action segment match each other, it is determined whether the corresponding action structure is repeated, thus verifying whether the corresponding rapid change candidate segment belongs to a real rapid action that can be repeated.

[0018] Validated and effective rapid change segments are used to establish action transition relationships and participate in preset value adjustment as real rapid action data. By statistically analyzing the prediction deviation and skeletal changes between effective and ordinary action segments using subsequent character skeleton data, the preset values ​​used to filter action segments are adjusted, so that the action structure verification results can reversely correct the prediction deviation filtering conditions, thereby forming a self-verification closed loop for game animation action generation. Attached Figure Description

[0019] Figure 1 This is a schematic diagram of the structure of a method for automatically generating game animation actions based on character skeletal data according to the present invention.

[0020] Figure 2 Generate graphs for skeletal node correspondence, skeletal pose combination, and prediction bias.

[0021] Figure 3 Temporal recognition map of skeletal coordinated changes in rapidly changing candidate segments. Detailed Implementation

[0022] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0023] Example: Please refer to Figures 1-3 As shown, this invention discloses a method for automatically generating game animation actions based on character skeletal data, including the following steps: Step 1: Perform bone node mapping and state combination on the character skeleton data at the same acquisition time to obtain the bone pose at the corresponding acquisition time, establish a motion model for subsequent bone pose prediction, and obtain the prediction deviation of each action segment based on the difference between the predicted bone pose and the actual bone pose. Step 2: From action segments where the prediction deviation exceeds a preset value, identify rapidly changing candidate segments based on changes in bone position and rotation state in the character skeleton data; Step 3: Based on whether the action structure formed by the candidate rapid change segments and the action segments before and after them appears repeatedly, determine the effective rapid change segments, retain the effective rapid change segments to establish action transformation relationships, and exclude the remaining action segments from the data for establishing the current action transformation relationships. Step 4: Obtain subsequent character skeletal data. Without being limited by the current preset values, use the identified recurring motion structures to match subsequent motion segments. Adjust the preset values ​​based on the prediction deviation of the matched segments and skeletal changes.

[0024] In step one, the skeleton data of the character at the same acquisition time are mapped to skeleton nodes and combined with states to obtain the skeleton pose at the corresponding acquisition time. A motion model for subsequent prediction of skeleton pose is established, and the prediction deviation of each action segment is obtained based on the difference between the predicted skeleton pose and the actual skeleton pose. The specific content includes: Acquire character skeleton data formed during the continuous execution of game animation actions by game characters, and obtain the acquisition time corresponding to each set of character skeleton data; The character skeleton data includes at least the position of the character's root node, the rotation state of the character's root node, and the rotation state of multiple bone joints. By combining the character's root node position, root node rotation state, and joint rotation state at the same acquisition time, the bone posture at the corresponding acquisition time can be obtained.

[0025] It should be noted that the root node of the character is a skeletal node used to determine the overall position and orientation of the character. It can usually be set at the position of the character's pelvis or the overall coordinate origin of the character model. Skeletal joints are nodes that constitute the character's skeletal structure, excluding the root node, according to the parent-child connection relationship. The rotational state of skeletal joints can be represented using Euler angles, rotation matrices, or quaternions; During the same data processing, all skeletal joints use the same rotation representation method.

[0026] Before grouping the character skeleton data, the character skeleton data is processed uniformly; Unified processing includes at least checking the correspondence between skeletal nodes, checking the time interval between data collection, unifying the character's orientation, and unifying the skeletal proportions. Skeletal node correspondence check is used to ensure that the same body parts from different data sources correspond to the same skeletal nodes; acquisition time interval check is used to determine whether two adjacent sets of character skeletal data are continuous in time; character orientation unification is used to eliminate posture differences caused by different initial facing directions of characters; skeletal proportion unification is used to eliminate the influence of different character heights or limb lengths on the comparison of skeletal positions.

[0027] For example, when the left knee joint number in the first motion data is the first number and the left knee joint number in the second motion data is the second number, the first number and the second number are uniformly mapped to the left knee joint according to the pre-saved bone node correspondence table. For decorative bones, cape bones, or weapon auxiliary bones that do not have a corresponding relationship, they do not need to be included as necessary data for bone pose grouping.

[0028] It should be noted that when the time interval between the acquisition of two adjacent sets of character skeleton data is greater than the upper limit of the normal acquisition interval, a time break result is formed between the two adjacent sets of character skeleton data. The upper limit of the normal acquisition interval can be determined based on the sampling frequency of the character's skeletal data; For example, when character skeleton data is sampled at 60 times per second, twice the normal sampling interval can be used as the upper limit. By using this time-discontinuous result, the time-discontinuous data is split into different skeletal data sequences, avoiding the mistaken treatment of two independent actions as the same continuous action.

[0029] The position of the character's root node is converted into the position change of the root node relative to the start acquisition time of the current bone data sequence, and the rotation state of the character's root node is converted into the orientation change of the root node relative to the start acquisition time. For other skeletal joints, their rotational state relative to the parent bone is used to represent the corresponding joint posture; This yields unified character skeletal data.

[0030] Based on the unified character skeleton data, the similarity between any two skeleton poses is calculated to obtain the skeleton pose difference results.

[0031] The skeletal pose difference results are obtained based on the differences in the character's root node orientation and the corresponding skeletal joint rotation. For each pair of corresponding skeletal joints in two skeletal poses, the minimum rotation angle required to transform from one rotation state to another is calculated to obtain the joint pose difference of the corresponding skeletal joint. The skeletal pose differences of each joint are normalized and summed with the differences in the character's root node orientation to obtain the skeletal pose difference results between the two skeletal poses.

[0032] It should be noted that the character root node position recorded in the skeletal pose is used to represent the character's position in the game scene, but the absolute position of the character root node relative to the game scene is not included in the calculation of the skeletal pose difference results. This is to avoid characters with the same body pose being classified into different skeletal pose groups because they are located in different scene positions. The change in the character root node position is used separately in step two for the identification of rapidly changing candidate segments.

[0033] It should be noted that normalization is used to convert the rotational differences of different skeletal joints to the same comparison range; For skeletal joints with a permissible range of motion, the difference in joint posture can be divided by the permissible range of motion of the corresponding joint; for skeletal joints without a pre-defined permissible range of motion, the maximum rotation range of the joint in historical character skeletal data can be used as a normalization benchmark.

[0034] In one possible implementation, each major skeletal joint uses the same comparison weight when calculating the skeletal posture difference results; The major skeletal joints include at least the hip joint, spinal joint, shoulder joint, elbow joint, knee joint, and ankle joint; Finger joints, facial joints, and decorative bones may be excluded from grouping or given a lower comparative weight than major skeletal joints.

[0035] For example, for running movements that are primarily leg movements, the left and right hip joints, left and right knee joints, and left and right ankle joints are involved in the calculation of the skeletal posture differences; for attack movements that are primarily arm movements, the left and right shoulder joints, left and right elbow joints, left and right wrist joints, and spinal joints are involved in the calculation of the skeletal posture differences. Different motion data still use the same calculation process, and only the major skeletal joints involved in the calculation can be configured according to the skeletal structure of the game character.

[0036] Determine the grouping boundaries of skeletal postures based on the results of skeletal posture differences; Skeletal pose grouping boundaries are used to determine whether two skeleton poses are sufficiently close. When determining the grouping boundary of bone poses, for each bone pose, the bone pose difference between the bone pose and the temporally adjacent bone poses is calculated; the multiple bone pose difference results are arranged in ascending order, and the upper bound that can cover the preset proportion of adjacent bone pose difference results is determined as the bone pose grouping boundary.

[0037] It should be noted that the preset ratio is used to exclude the impact of a small number of data collection jumps on the group boundaries; In one specific implementation, the preset ratio can be set to 95%. In other words, the pose difference results of adjacent bones are sorted from smallest to largest, and the pose difference results of bones located at 95 percent position are selected as the grouping boundary of bone pose. This value is only one feasible example. Other ratios can be used depending on the amount of data and the type of action, without changing the above-described determination logic.

[0038] The character skeleton data was grouped according to the results of skeleton pose differences and the grouping boundaries of skeleton poses to obtain multiple skeleton pose groups. Specifically, select a group of character bone data from the ungrouped character bone data as the initial center of the current group, calculate the bone pose difference between other character bone data and the initial center of the current group, and add the character bone data whose bone pose difference is not greater than the bone pose grouping boundary to the current group. The group center of the current group is redefined based on the character skeleton data added to the current group, and the process of adding character skeleton data and updating the group center is repeated until the character skeleton data contained in the current group no longer changes.

[0039] After the current group is determined, a new initial center is selected from the remaining ungrouped character bone data to establish the next bone pose group, until each character bone data has a corresponding bone pose group. For character bone data whose bone pose difference results with all group centers are greater than the bone pose grouping boundary, a separate group to be merged is formed. When the number of character bone data in the group to be merged reaches the minimum modeling number, the group to be merged is determined as an independent bone pose group; otherwise, it is merged into the adjacent bone pose group with the smallest bone pose difference result.

[0040] It should be noted that the minimum number of models is used to ensure that there is enough data in each bone pose group to build a motion model; In one specific implementation, the minimum number of models can be set to twenty sets of continuous character skeleton data; When the sampling frequency or motion model structure changes, the minimum number of models can be adjusted accordingly, but it should be ensured that at least multiple pairs of current skeleton pose-subsequent skeleton pose training data can be formed within the group.

[0041] Arrange the character skeleton data in the same skeleton pose group according to the acquisition time; When adjacent character bone data belonging to the same bone pose group are continuous in time, they are classified into the same action segment; when there is a time break between adjacent character bone data, or when character bone data belonging to other bone pose groups is inserted in the middle, the action segment is split at the corresponding position. This results in multiple action segments.

[0042] A motion model for predicting subsequent skeletal poses is established using temporally continuous and complete character skeletal data from each skeletal pose group.

[0043] Before forming training data pairs, the character skeleton data undergoes a training data check. Data that is disconnected across time periods is not included in the training data pairs. The initial allowable range of bone length is determined based on the baseline length of each parent and child bone in the character's skeletal structure after the bone proportions are unified; In one specific implementation, the range in which the change ratio of the actual length of the parent and child skeletons relative to the corresponding reference length does not exceed a preset initial ratio is defined as the initial allowable range of bone length. Data lacking necessary skeletal node states, parent-child bone lengths exceeding the initial bone length allowable range, or data where only a single bone joint experiences a momentary jump and recovers in the next acquisition time, will not be included in the parameter solution of the initial motion model.

[0044] In one main implementation of this embodiment, the motion model employs a linear state prediction model. The skeletal pose at one acquisition time and its change relative to the previous acquisition time are used as model input, and the actual skeletal pose at the next acquisition time is used as model output, forming training data pairs.

[0045] The parameters of the motion model are obtained by solving for the training data pairs within the same skeletal pose group, minimizing the sum of squared differences between the predicted skeletal poses obtained by the motion model and the corresponding actual skeletal poses. These motion model parameters are used to describe at least the propagation relationships of root node position changes, root node orientation changes, and joint rotation changes from the current acquisition time to the next acquisition time.

[0046] When solving for parameters, a least squares method with regularization constraints can be used. Regularization constraints are used to prevent the amplitude of motion model parameters from becoming too large when the amount of training data is small.

[0047] The motion model obtained from the initial solution is used to predict each training data pair, and the training prediction difference is obtained according to the difference between the predicted bone posture and the actual bone posture. The training prediction differences are arranged in ascending order, and the upper bound of the training prediction differences covering a preset proportion is determined as the training difference limit. Data with training prediction differences exceeding the training difference limit are temporarily excluded, and the motion model parameters are solved again.

[0048] In one specific implementation, the preset ratio can be set to 95%. The process of excluding training data and solving for motion model parameters is repeated until the training data used for parameter solving no longer changes, or until the preset number of repetitions is reached. The preset number of repetitions can be set to three.

[0049] In other possible implementations, the motion model may also employ other temporal prediction models that can generate the next predicted bone pose based on the current bone pose and changes in the current bone pose. However, different motion models all output the predicted bone pose in a unified bone node order and use the same method for determining prediction bias.

[0050] For example, for the skeletal posture group of the leg swing during running, the motion model predicts the leg skeletal posture at the next acquisition time based on the current rotational state of the hip, knee and ankle joints, as well as the rotational changes of these joints relative to the previous acquisition time. For the upper limb skeletal posture group during the sword-swinging action, the motion model predicts the upper limb skeletal posture at the next acquisition time based on the current rotational state and changes of the shoulder joint, elbow joint, wrist joint, and spinal joint.

[0051] The character skeleton data in each action segment is sequentially input into the motion model corresponding to its respective skeleton pose group to obtain the predicted skeleton pose at each acquisition time. The predicted skeleton pose is compared with the actual skeleton pose at the same acquisition time to obtain the single prediction difference result; The differences in a single prediction include differences in root node position, root node orientation, and rotation of each skeletal joint.

[0052] It should be noted that the difference in root node position can be normalized by dividing by the character's height, the difference in root node orientation can be normalized by dividing by the full range of rotation, and the difference in skeletal joint rotation can be normalized by dividing by the allowable range of motion of the corresponding joint. The average of the normalized differences is used to obtain the single prediction difference result for that collection time.

[0053] To avoid a single acquisition error directly determining the prediction deviation of the entire action segment, a continuous judgment time window is set within the action segment; The duration of the continuous judgment time window can be determined based on the sampling frequency. In one specific implementation, the continuous judgment time window can correspond to the character skeleton data within 0.1 seconds; The average value of the single prediction difference results within the continuous judgment time window is used to obtain the window prediction difference result; the largest window prediction difference result in an action segment is determined as the prediction bias of that action segment.

[0054] The initial preset value is determined based on the prediction deviation of historical action segments; Specifically, cross-prediction is performed using motion segments that have already been used in motion model building. Each time, motion model building is temporarily not performed using one motion segment, but using the remaining motion segments. Then, prediction is performed on the motion segments that have not yet been used in modeling to obtain the prediction bias of the corresponding motion segments. Multiple prediction deviations are arranged in ascending order, and the upper limit of the prediction deviation covering the preset proportion is determined as a preset value.

[0055] It should be noted that in one specific implementation, the preset ratio can be set to 95%, so that the prediction deviation of the vast majority of motion segments that can be normally described by the motion model does not exceed the preset value, while motion segments with significantly larger prediction deviations proceed to step two. The preset values ​​include general preset values ​​and skeletal pose group preset values. When not enough character skeletal data has been accumulated, the general preset values ​​shared by all motion segments are used; when the number of motion segments accumulated for the same skeletal pose group reaches the minimum modeling number, the skeletal pose group preset values ​​are determined based on the prediction deviation of the corresponding motion segments of that skeletal pose group, and the skeletal pose group preset values ​​are used first to judge the prediction deviation of the corresponding motion segments.

[0056] This step yields the skeletal pose group, motion segments, motion model, predicted skeletal pose, actual skeletal pose, prediction deviation of each motion segment, and preset values. Action segments whose prediction deviation exceeds a preset value are used as input for step two.

[0057] In step two, from action segments whose prediction deviation exceeds a preset value, rapidly changing candidate segments are identified based on changes in bone position and rotation state in the character's skeletal data. Specifically, this includes: When performing this step, the motion segments whose prediction deviation exceeds a preset value from step one are read. A prediction deviation exceeding a preset value indicates that the motion model cannot accurately describe the motion segment according to the conventional skeletal change relationships in the corresponding skeletal pose group, and is used to limit the range of motion segments that need to be analyzed for continuous skeletal changes.

[0058] It should be noted that prediction bias only reflects the degree of deviation between the predicted skeletal posture and the actual skeletal posture, and does not directly indicate the cause of the deviation. Individual skeletal node capture jumps, incorrect skeletal node mappings, and data loss can produce significant prediction bias; the actual rapid skeletal changes that occur when a character performs jumps, landings, sudden stops, rolls, is hit, or performs rapid attacks can also produce significant prediction bias.

[0059] Therefore, for motion segments whose prediction deviation exceeds the preset value, deletion, smoothing, or replacement is not performed directly. Instead, the changes in the root node position, the rotational changes of adjacent bone joints in the main skeletal chain, and the positional changes of bone nodes at the limb ends are analyzed according to the acquisition time to obtain the skeletal changes of the corresponding motion segments.

[0060] It determines whether multiple adjacent bone joints in the main skeletal chain undergo rotational changes in a corresponding sequence within a continuous time range, and whether these rotational changes correspond temporally to changes in the root node position or the position of extremity bone nodes. Only when multiple bone changes collectively constitute a continuous change process is the corresponding continuous data range identified as a candidate segment for rapid change.

[0061] Through this process, prediction bias is used to identify motion segments that cannot be accurately described by conventional motion models. Continuous changes in bone position and rotation state are used to determine whether there are rapid changes in the motion segment that may have real motion significance. The rapid change candidate segments obtained in step two are still segments that need further verification. Whether they can be used to establish motion transformation relationships is determined by the motion structure repetition judgment in step three.

[0062] For each adjacent capture time in the action segment, calculate the position change of the character's root node and obtain the root node position change result; The results of the root node position change include changes in horizontal position, vertical position, and direction of movement; Horizontal position change is used to represent the distance a character moves within the scene plane, vertical position change is used to represent the distance a character rises or falls, and movement direction change is used to represent the degree of change in the character's movement direction within an adjacent time range.

[0063] For each skeletal joint in the motion segment, the difference in rotational state between adjacent acquisition times is calculated to obtain the joint rotation change results; The joint rotation change results of the current acquisition interval are compared with the joint rotation change results of the previous acquisition interval to obtain the joint rotation change rate results. The direction of joint rotation is determined by whether the directions of two consecutive joint rotation changes are consistent.

[0064] It should be noted that when quaternions are used to represent the rotation state of skeletal joints, the signs of adjacent quaternions should be unified first, and then the shortest rotation angle between the two quaternions should be calculated. This avoids the misinterpretation that positive and negative quaternions representing the same rotational state are actually due to significant rotational differences. When skeletal joints are represented using Euler angles, the values ​​crossing the angular period boundary are made continuous to avoid false large rotations when the angle changes from near the positive boundary to near the negative boundary.

[0065] Identify the main skeletal chains involved in rapid change recognition based on the character's skeletal structure; The main skeletal chain is a continuous set of joints formed by multiple skeletal joints with parent-child connections; For a typical humanoid game character, the main skeletal chains can include the left leg skeletal chain, right leg skeletal chain, left arm skeletal chain, right arm skeletal chain, and torso skeletal chain.

[0066] For example, the left leg skeletal chain may include the left hip joint, left knee joint and left ankle joint in sequence; the right arm skeletal chain may include the right shoulder joint, right elbow joint and right wrist joint in sequence; the trunk skeletal chain may include the pelvic joint, multiple spinal joints and cervical joints; For characters with different skeletal structures, the corresponding main skeletal chain can be determined based on the connection relationship between their parent and child skeletons.

[0067] Based on the motion segments in step one whose predicted deviation does not exceed the preset value, determine the limits of bone position change and joint rotation change. Specifically, the root node position change results in motion segments with prediction deviations not exceeding a preset value are statistically analyzed, the root node position change results are arranged in ascending order, and the upper bound of the position change results covering a preset proportion is determined as the bone position change limit. The results of joint rotation changes of each major skeletal joint were statistically analyzed, and the same sorting method was used to determine the limits of joint rotation changes.

[0068] It should be noted that in one specific implementation, the preset ratio can be set to 95%. The limits for skeletal positional changes and joint rotational changes represent the upper limits of positional and rotational changes that typically occur in motion segments that can be normally described by the motion model, respectively. When a change in position or rotation exceeds the corresponding limit, it indicates that the position or joint has changed rapidly relative to normal changes, but it is still necessary to combine the continuity of the change and the synergy of the skeletal chain for judgment.

[0069] For each major skeletal chain, the number of skeletal joints whose joint rotation changes exceed the joint rotation change limit within the same continuous judgment time window is counted to obtain the skeletal chain change count. When at least two adjacent joints in the same primary skeletal chain exceed their corresponding joint rotation change limits within the same continuous judgment time window, a skeletal chain collaborative change result is generated.

[0070] It should be noted that using the joint change of at least two adjacent skeletal joints as a criterion is to distinguish between real movements and single-joint jumps. A real leg extension usually causes changes in multiple adjacent joints in the hip, knee, or ankle joints simultaneously; a real swinging motion usually causes changes in multiple adjacent joints in the shoulder, elbow, or wrist joints simultaneously. If a single joint undergoes a significant change within a frame, but the parent and child joints do not show corresponding changes, it is not directly identified as a candidate segment for rapid change.

[0071] Based on the rotation direction of each adjacent bone joint within the continuous judgment time window, it is determined whether the change conforms to the continuous transmission relationship of the skeletal chain, and the result of the skeletal chain change sequence is obtained. For example, during the leg extension process, the hip, knee, and ankle joints can extend sequentially within adjacent time ranges; during the landing and cushioning process, after the ankle joint approaches the ground, the knee and hip joints can flex sequentially. If the timing of changes in each joint is completely unrelated or the directions of change conflict with each other, no result will be generated for the skeletal chain change sequence.

[0072] Determine the rapid change result of the root node based on the root node position change result; When the horizontal or vertical position change of the root node exceeds the limit of bone position change, and the change maintains the same main direction in multiple acquisition times within a continuous judgment time window, it is determined that there is a rapid change in the root node. If a position change occurs only in one acquisition time and immediately returns to the original position in the next acquisition time, it is considered a position anomaly and is not necessarily a rapid change of the root node.

[0073] The positional change of the limb extremity is obtained by calculating the positional changes of the limb extremity bone nodes in the scene coordinates. The limb extremity bone nodes include the foot bone nodes corresponding to the leg bone chain, and the wrist bone nodes or hand bone nodes corresponding to the arm bone chain.

[0074] For foot bone nodes, when they maintain a height close to the same scene and the horizontal movement distance does not exceed the corresponding position change limit during multiple consecutive acquisition times, the foot bone node is determined to be in a stable position state. When the foot bone nodes move continuously upward from a stable position, it is determined that there is a change in altitude. When the foot bone nodes move continuously from a higher position to a stable height, it is determined that there is a change in proximity to the ground.

[0075] When the ground height is available in the game scene, the foot position is determined based on the distance between the foot bone node and the ground height; when the ground height cannot be directly obtained, the lowest position where the foot bone node is held for the longest time in the action segment is used as the reference height.

[0076] For wrist or hand bone nodes, calculate their positional change relative to the character's torso bone nodes; when the positional change exceeds the corresponding positional change limit within a continuous judgment time window and maintains the same main direction of movement over multiple consecutive acquisition times, it is determined that there is a continuous positional change at the end of the upper limb.

[0077] Based on the rapid changes of the root node, the coordinated changes of the skeletal chain, the sequence of changes in the rotation of the main skeletal chain joints, and the changes in the position of the limb extremities, candidate segments with rapid changes are identified.

[0078] When an action segment meets at least one of the following two conditions, the corresponding continuous data range is determined as a candidate segment for rapid change: The first condition is that at least one major skeletal chain has a coordinated change and a sequence of joint rotation changes in the major skeletal chain, and the root node has a rapid change that corresponds to the change in the major skeletal chain in time; the second condition is that at least one major skeletal chain has a coordinated change and a sequence of joint rotation changes in the major skeletal chain, and the corresponding limb end bone node has a continuous positional change.

[0079] It should be noted that the above judgment is not a simple addition of different parameters, but a judgment on whether different skeletal changes correspond to each other in time; Only when changes in the root node, joint rotation, and end-bone node position occur within adjacent consecutive time intervals are they considered to constitute a single rapid motion process.

[0080] For example, when a character performs a jump, the hip and knee joints may bend first, followed by the hip, knee and ankle joints extending along the leg skeletal chain, while the vertical position of the root node begins to increase, and the foot changes from a stable position to a position off the ground. When the above changes occur in the corresponding order, the acquisition time from the point when the leg skeletal chain begins to extend significantly to the point when the vertical change at the root node tends to stabilize is identified as a candidate segment for rapid changes.

[0081] For example, when a character performs a rapid sword swing, the foot position can remain unchanged, but the shoulder joint, elbow joint and wrist joint rotate continuously along the arm skeletal chain, while the spinal joint rotates simultaneously in the direction of the swing. At this point, candidate segments for rapid changes can be identified based on the coordinated changes of the upper limb skeletal chain, the order of changes, and the continuous and rapid changes in the wrist joint position, without requiring changes in the foot position.

[0082] Determine the start and end positions of rapidly changing candidate segments; The first acquisition time that satisfies the skeletal chain coordinated change and continues to meet the rapid change judgment criteria for multiple consecutive acquisition times is determined as the starting position of the rapid change candidate segment. The acquisition time when the root node position change, the major skeletal chain joint rotation change, and the limb distal bone node position change last exceeded the corresponding change limit is determined as the end position of the rapid change candidate segment; the end position is confirmed only if the relevant skeletal changes after this acquisition time do not exceed the corresponding change limit again within the preset recovery time.

[0083] It should be noted that the preset recovery time is used to avoid prematurely truncating segments when the motion changes briefly decrease and then increase again. The preset recovery time can be determined based on a continuous judgment time window; In one specific implementation, the preset recovery time can be equal to the continuous judgment time window; In other words, the rapid change process is only considered to have ended when the relevant skeletal changes do not exceed the corresponding limit again within a complete and continuous judgment time window.

[0084] When a motion segment with a prediction deviation exceeding a preset value contains multiple discontinuous ranges of rapid change, multiple candidate segments of rapid change are formed respectively. The segments not included in the rapid change candidate segments are not directly identified as valid rapid change segments, but are processed as the remaining action segments in step three.

[0085] This step yields the skeletal changes and rapid change candidate segments corresponding to each motion segment whose prediction deviation exceeds a preset value; Each rapidly changing candidate segment has a clearly defined start position, end position, main skeletal chain, skeletal position changes, and rotational state changes, and serves as an intermediate segment in step three for forming the motion structure.

[0086] In step three, based on whether the action structure formed by the candidate rapid change segments and their preceding and following action segments is repeated, valid rapid change segments are determined, and these valid rapid change segments are retained to establish action transition relationships. The remaining action segments are excluded from the current action transition relationship establishment data. Specifically, this includes: For each rapidly changing candidate segment obtained in step two, based on its start and end times, obtain the preceding and following action segments that are time-continuous with the rapidly changing candidate segment, and combine the preceding action segment, the rapidly changing candidate segment, and the following action segment into an action structure according to the acquisition time.

[0087] It should be noted that the preceding action fragment represents the character's skeletal posture before the rapid change occurs, the following action fragment represents the character's skeletal posture after the rapid change is completed, and the rapid change candidate fragment represents the intermediate skeletal change process during the transition from the preceding skeletal posture to the following skeletal posture. Therefore, the motion structure does not only represent the connection between two action fragments, but also simultaneously represents the starting state, intermediate change process, and ending state of the motion transition.

[0088] For multiple action structures, the main skeletal poses of the preceding and following action segments are first compared. Then, the main skeletal chains corresponding to the rapidly changing candidate segments, the rotational order of each joint in the main skeletal chains, the main movement direction of the root node, and the normalized skeletal change sequence are compared. When two action structures have matching preceding skeletal poses, matching following skeletal poses, and matching intermediate skeletal change processes, the two action structures are determined to be matching action structures.

[0089] The study counts whether matching motion structures repeat. Repetition of motion structures is used to verify the reproducibility of intermediate skeleton changes with large prediction biases, rather than simply to determine whether there is a connection between the forebon and posterior skeleton poses.

[0090] When matching motion structures recur, it indicates that the character can start from the matching fore-skeleton pose, complete the intermediate rapid transition according to the matching sequence of joint rotations in the major skeletal chain, and enter the matching rear-skeleton pose. Occasional abrupt changes in skeletal node capture, incorrect node mappings, or data loss typically make it difficult to repeat the same sequence of joint rotations in the same major skeletal chain between the same fore- and rear-skeleton poses. Therefore, when motion structures recur and rapid transition candidate segments conform to skeletal connections, the corresponding rapid transition candidate segments are identified as valid rapid transition segments.

[0091] State boundary constraints are formed by using preceding and subsequent action segments, process constraints are formed by using the rotational sequence of joints in the main skeletal chain, and reproducibility constraints are formed by using the repetition of action structures. Through multiple layers of constraints, it is verified whether the rapidly changing candidate segments with large prediction deviations belong to real rapid actions.

[0092] It should be noted that the preceding action segment is the action segment that is time-continuous with the start position of the rapidly changing candidate segment and is located before the start position; the following action segment is the action segment that is time-continuous with the end position of the rapidly changing candidate segment and is located after the end position. If the duration of the character bone data on the front and rear sides is insufficient to determine the bone pose group, the reading is extended in the corresponding direction until both the front and rear action segments contain character bone data of no less than the minimum number of state frames.

[0093] The minimum number of state frames is used to ensure that the preceding and following motion segments can represent relatively stable skeletal poses. In one specific implementation, the minimum number of state frames can correspond to 0.2 seconds of character skeleton data; For example, at 60 samples per second, the minimum number of state frames can be set to 12 frames.

[0094] Based on the skeletal pose group obtained in step one, determine the front skeletal pose group corresponding to the previous action segment and the back skeletal pose group corresponding to the next action segment. When a preceding or following action segment includes multiple skeletal pose groups, the skeletal pose group containing the most character skeletal data is determined as the primary skeletal pose group for the corresponding action segment; when the number is the same, the skeletal pose group that is closer in time to the candidate segment with rapid changes is determined as the primary skeletal pose group.

[0095] The main skeletal pose group of the preceding action segment, the skeletal changes of the rapidly changing candidate segments, and the main skeletal pose group of the following action segment are combined to obtain the action structure. Action structure is used to represent the process by which a character transitions from the skeletal pose corresponding to the previous action segment to the skeletal pose corresponding to the subsequent action segment through rapidly changing candidate segments.

[0096] Generate intermediate change descriptions for rapidly changing candidate fragments; The intermediate change description results should include at least the main skeletal chain, the rotational order of each bone joint in the main skeletal chain, the main movement direction of the root node, the duration of the rapidly changing candidate segment, and the main positional change direction of the limb distal bone node.

[0097] It should be noted that the main skeletal chain is the main skeletal chain with the largest total change in joint rotation in the rapidly changing candidate segments; When the total rotational changes of two or more main skeletal chains are close, the corresponding main skeletal chains can be recorded together in the intermediate change description result. The rotation direction sequence is arranged according to the time of acquisition when each bone joint first exceeds the joint rotation change limit.

[0098] To compare candidate segments of rapid change with different durations, each candidate segment of rapid change is time-normalized according to its start and end positions. Specifically, the starting position of the rapidly changing candidate fragment is used as the normalization starting point, the ending position is used as the normalization ending point, and the same number of comparison positions are determined between the starting point and the ending point. Based on the acquisition time of the original character's skeletal data, interpolation is performed at each comparison position to obtain a normalized skeletal change sequence.

[0099] For example, twenty equally spaced comparison positions can be determined in each rapidly changing candidate segment; Both short-duration and long-duration rapid change candidate segments were converted into normalized skeletal change sequences including twenty comparison positions. Therefore, we can compare the skeletal changes of two action segments without requiring them to have the same number of frames.

[0100] For any two action structures, first compare whether the principal skeletal pose groups corresponding to the preceding action segments are the same, and then compare whether the principal skeletal pose groups corresponding to the following action segments are the same. If any one of them is different, the two action structures are determined to be different. When both are the same, continue to compare the intermediate change description results of the two rapidly changing candidate segments.

[0101] When comparing the intermediate change description results, determine whether the main skeletal chains of the two rapid change candidate segments are the same, whether the sequence of joint rotation changes of the main skeletal chains in the main skeletal chains is the same, and whether the main movement direction of the root node is the same. When the above contents are the same, further compare the normalized skeletal change sequences to obtain the intermediate change difference results.

[0102] It should be noted that the intermediate variation difference results can be obtained in the same way as the bone posture difference results in step one, that is, by comparing the root node position, root node rotation state and the rotation state of each bone joint in the main bone chain at the corresponding comparison position, and then taking the average value of the differences at each comparison position.

[0103] Determine the action structure matching limits based on known continuous action data; Specifically, historical motion structures with the same anterior bone posture group, the same posterior bone posture group, the same main skeletal chain, the same main skeletal chain joint rotation sequence, and the same root node main movement direction are first classified into the same motion structure group; within the same motion structure group, the intermediate change difference results between each motion structure are calculated, the intermediate change difference results are arranged in ascending order, and the upper bound of the intermediate change difference results covering a preset proportion is determined as the motion structure matching boundary corresponding to the motion structure group.

[0104] It should be noted that in one specific implementation, the preset ratio can be set to 90%. Compared to step one, which uses a higher proportion to determine the grouping boundaries of skeletal poses, this step uses a relatively stricter proportion to ensure that the rapidly changing candidate segments identified as matching motion structures have a more consistent main skeletal change process.

[0105] Two motion structures are considered to be matched when they have the same anterior skeleton posture group, the same posterior skeleton posture group, the same principal skeleton chain, the same principal skeleton chain joint rotation sequence, and the difference in intermediate changes is not greater than the motion structure matching limit.

[0106] For each action structure, first determine whether other action structures that match it belong to independent action instances.

[0107] It should be noted that an independent action instance refers to an action structure that originates from a non-overlapping acquisition time range and has a complete preceding action segment, a rapidly changing candidate segment, and a subsequent action segment. Multiple action structures originating from the same continuous action process, with overlapping acquisition time ranges, or repeating only due to time window shifts, are combined into one action instance.

[0108] Two matching motion structures are identified as two independent motion instances when they originate from different motion capture records, different game animation execution records, or are separated in the same record by a motion segment that lasts for no less than the minimum number of state frames, is temporally continuous, and whose main skeletal pose groups remain unchanged.

[0109] The number of action structures that match each other and belong to independent action instances is counted to obtain the number of times the action structure is repeated. Based on the relationship between the number of times the action structure is repeated and the limit of the number of times the action structure is repeated, it is determined whether the corresponding action structure appears repeatedly.

[0110] The repetition limit is used to exclude occasional bone node jumps and repeated segments of the same action process. In one specific implementation, the repetition limit can be set to three independent action instances, i.e., when the same front bone pose group, the same back bone pose group, and the matching intermediate bone change process appear in three independent action instances, the corresponding action structure is determined to have repeated occurrences.

[0111] When the number of historical character skeleton data is insufficient to meet the repetition limit, the action structure identifier to be confirmed is generated based on the previous main skeleton posture group, the intermediate change description result and the subsequent main skeleton posture group corresponding to the rapid change candidate segment, and the corresponding rapid change candidate segment is marked as a segment to be confirmed instead of being immediately excluded.

[0112] The segment to be confirmed retains its character skeleton data, previous action segment, subsequent action segment, intermediate change description results, and action structure identifier to be confirmed. When action structures with the same action structure identifier to be confirmed appear in subsequent character skeleton data, the number of repetitions of the action structure is accumulated according to non-overlapping independent action instances; when the accumulated result reaches the repetition limit and the corresponding rapid change candidate segment passes the skeleton connection rationality check, the segment to be confirmed and the newly added matching segment are jointly determined as valid rapid change segments.

[0113] It should be noted that segments awaiting confirmation that have not reached the repetition limit are not used to establish the current action transition relationship, nor are they considered valid rapidly changing segments for preset value adjustment. When there are not enough similar historical action structures to determine the action structure matching limit, existing intermediate change difference results with the same main skeletal chain and the same joint rotation change sequence are statistically analyzed, and the upper bound of the intermediate change difference results covering the preset proportion is used as the initial action structure matching limit; when the amount of data used to determine the upper bound is still insufficient, only the segments awaiting confirmation are saved, and the repetition of the corresponding action structure is not directly confirmed.

[0114] For each pair of parent-child bone joints in a rapidly changing candidate segment, calculate the distance between them and compare it with the baseline length of the corresponding parent-child bones in the character's skeletal structure; When the differences in bone length at each acquisition time are all within the allowable range for bone length, a reasonable bone connection result is generated.

[0115] It should be noted that the allowable range of bone length can be determined based on action segments where the predicted deviation does not exceed a preset value; The proportion of change in bone length relative to the baseline length for the same father and son in the aforementioned action segments was statistically analyzed, and the upper limit covering 95% of the proportion of change was determined as the allowable range of bone length. If a single bone joint in a rapidly changing candidate fragment undergoes a significant positional jump, resulting in the parent and child bone lengths significantly exceeding the allowable range for bone length, then no reasonable bone connection result will be generated.

[0116] When the number of repetitions of the action structure reaches the repetition limit and the corresponding rapid change candidate segment has a reasonable skeletal connection result, the rapid change candidate segment is determined as a valid rapid change segment. This generates effective, rapidly changing fragments to determine the results.

[0117] It should be noted that the prediction deviation exceeding the preset value in step one is only used to trigger subsequent skeletal change analysis; when a candidate segment of rapid change passes the action structure repetition judgment and skeletal connection rationality check, it is retained as a valid rapid change segment and is not excluded as abnormal skeletal data. The large prediction bias was identified as originating from the real rapid skeletal changes that occur when a character transitions from a previous action segment to a subsequent action segment.

[0118] Establish action transition relationships based on effective rapid change segments, preceding action segments, and following action segments; The motion transition relationship includes at least the main skeletal pose group of the preceding motion segment, the main skeletal pose group of the following motion segment, and the effective rapid change segment connecting the two. When a character needs to transition from the front skeleton pose group to the back skeleton pose group, the character's bone data in the corresponding effective fast change segment can be called.

[0119] For example, when multiple character action samples all show a rapid change candidate segment starting from the running skeletal posture group, passing through the leg extension and root node rise, and entering the airborne skeletal posture group, and the number of repetitions of the above action structure reaches the repetition limit, the middle extension segment is identified as a valid rapid change segment, and the action transformation relationship from the running skeletal posture group to the airborne skeletal posture group is established.

[0120] When there are multiple effective rapid change segments between the same anterior and posterior skeletal posture groups, all effective rapid change segments are recorded in the same motion transition relationship.

[0121] When invoked, the target's main skeletal chain, the target's main movement direction of the root node, and the target's action duration range are determined based on the target game action instructions. Then, effective fast-changing segments that match the target game action instructions in the action transformation relationship are selected to obtain candidate invoke segments.

[0122] The bone pose group to which the current bone pose belongs is compared with the previous main bone pose group corresponding to each candidate call segment. Candidate call segments whose previous main bone pose group is the same as the bone pose group to which the current bone pose belongs are determined as callable segments. When there are multiple callable segments, the target segment is selected according to the matching order of the target main bone chain, the target root node's main movement direction, and the target action duration range.

[0123] It should be noted that the character skeleton data in the target segment records the root node position change, root node rotation state, and rotation state of each bone joint according to the acquisition time. When generating game animation actions, the root node position change in the target segment is superimposed on the current character root node position to obtain the character root node position corresponding to each output time. The root node rotation state and the rotation state of each bone joint are read sequentially according to the acquisition time order in the target segment and combined with the corresponding character root node position to form a continuous animation skeleton posture.

[0124] When the duration of the target action differs from the original duration of the target segment, the output time of each bone pose is re-determined based on the ratio between the two. If the re-determined output time is between two adjacent acquisition times, interpolation is performed based on the root node state and bone joint state corresponding to the adjacent acquisition times to obtain the animation bone pose for the corresponding output time. The resulting animation bone poses are then sequentially output to the bone drive component of the game character to generate game animation actions.

[0125] For the remaining action segments that are not determined to be valid rapid change segments, exclude them from the data used to establish the current action transition relationship; The remaining action segments include those that do not meet the criteria for rapid change, those whose action structure has not reached the repetition limit and have not been marked as segments to be confirmed, and those that have not passed the skeletal connection rationality check.

[0126] It should be noted that excluding other action segments means not using the corresponding action segments to establish the current action transition relationship, and does not necessarily mean permanently deleting them from the original character skeleton database; The remaining motion segments, along with prediction bias, skeletal changes, and preceding and following motion segments, can be saved to an outlier dataset. When matching motion structures appear in subsequent character skeletal data, the judgment can be re-evaluated.

[0127] This step yields action structures, matching action structures, recurring action structures, effective and rapid change segments, and action transition relationships. It also clarifies that any remaining segments that fail the action structure repetition verification or skeletal connection rationality check will not be used to establish the current action transition relationship.

[0128] It should be noted that recurring motion structures and effective rapid change segments serve two purposes. First, by establishing motion transition relationships based on effective rapid change segments, preceding motion segments, and following motion segments, game characters can utilize verified intermediate bone changes to complete motion transitions between corresponding bone postures. Second, effective rapid change segments serve as real rapid motion data that has been verified through the combined analysis of preceding bone posture, intermediate bone change process, following bone posture, and repetition, and are used in step four to statistically analyze the prediction bias and bone changes of effective rapid change segments.

[0129] The remaining segments that do not form a recurring action structure are not directly used as real fast action data to participate in the preset value adjustment. Instead, they are used to characterize data that have large prediction deviations but lack coordinated changes in the main skeletal chain, lack stable change sequences, or lack repetitive action structures. This ensures that step four does not directly change the preset value based on unverified new data, but adjusts the prediction deviation screening conditions based on effective fast change segments that have been repeatedly verified by action structures.

[0130] In step four, subsequent character skeletal data is acquired. Without being limited by the current preset values, subsequent action segments are matched using the identified recurring motion structures. The preset values ​​are adjusted based on the prediction deviation of the matched segments and skeletal changes. Specific details include: After completing steps one through three, acquire the newly added character skeleton data and corresponding acquisition time. Following the same data unification, skeleton pose grouping, action segment division, and motion model prediction methods as in step one, obtain the prediction deviation of each subsequent action segment.

[0131] For subsequent motion segments, prediction deviation filtering and known motion structure matching are performed respectively. Prediction deviation filtering refers to taking subsequent motion segments with prediction deviations exceeding the current preset value as the analysis object, and obtaining subsequent rapid change candidate segments according to the same bone position and rotation state change judgment method as in step two.

[0132] Known motion structure matching refers to reading the motion structure identified as recurring in step three and searching through all subsequent motion segments for the range of subsequent data that share the same anterior and posterior bone pose groups as that motion structure. This search is not contingent on the prediction deviation of the corresponding subsequent motion segment exceeding the current preset value.

[0133] When subsequent data ranges contain the same anterior and posterior skeletal pose sets as the recorded motion structures, it is further determined whether the skeletal data between them have the same principal skeletal chains, the same sequence of joint rotation changes in the principal skeletal chains, and matching normalized skeletal change sequences as the recorded motion structures. If the above conditions are met, the corresponding intermediate data range is identified as a candidate segment for structural matching.

[0134] After the structural matching candidate segments pass the skeletal connection rationality check, the corresponding recurring action structures are added and statistically analyzed as effective rapid change segments. When the prediction deviation of a structural matching candidate segment is lower than the current preset value, it is recorded as a low-deviation effective rapid change segment. Low-deviation effective rapid change segments are used to determine whether the current preset value is too high.

[0135] It can detect new rapid changes in subsequent action segments where the prediction deviation exceeds the preset value, and it can also detect real rapid actions with the same state transition process but without the prediction deviation exceeding the current preset value, based on the already confirmed recurring action structure.

[0136] It should be noted that subsequent character skeletal data is not directly used for preset value adjustments based solely on prediction deviation values. For subsequent rapid change candidate segments, verification is still required through the main skeletal poses of the preceding and following action segments, the sequence of joint rotations in the main skeletal chain, the repetition of action structures, and the rationality of skeletal connections. Only rapid change segments that pass the above verification are included in the statistical scope of valid rapid change segments.

[0137] The motion segments involved in the preset value adjustment are classified into non-overlapping categories, resulting in effective rapid change segments, ordinary motion segments, and other motion segments.

[0138] Effective rapid change segments refer to rapid change segments where the number of repetitions of the motion structure reaches the repetition limit, or where they match a known recurring motion structure, and which pass the skeletal connection rationality check. Low-bias effective rapid change segments with prediction deviations below the current preset value but identified through matching known motion structures are also classified as effective rapid change segments.

[0139] A normal motion segment refers to a motion segment that does not match a pre-defined recurring motion structure, whose prediction deviation does not exceed the current preset value, and whose root node position change and major skeletal joint rotation change do not exceed the corresponding change limits.

[0140] Other motion segments refer to motion segments whose prediction deviation exceeds the current preset value, but which do not form rapidly changing candidate segments, do not reach the limit of the number of repetitions of the motion structure, or do not pass the skeletal connection rationality check.

[0141] Each action segment is assigned to only one category. When an action segment meets multiple classification criteria, its classification result is determined in the following order: effective rapid change segments, other action segments, and ordinary action segments.

[0142] For effective rapidly changing segments, the prediction bias, root node position change, main skeletal chain joint rotation change, main skeletal chain joint rotation change sequence, and segment duration are statistically analyzed to obtain the effective segment bias distribution and effective segment skeletal change distribution results. The prediction bias of ordinary action segments is statistically analyzed, and the bias distribution of ordinary action segments is obtained. The reasons for the failure to pass the validation and the skeletal changes in the remaining action segments were statistically analyzed, and the distribution of skeletal changes in the remaining segments was obtained.

[0143] When some effective rapid change segments with stable main skeletal chain coordinated changes and recurring motion structures do not reach the current preset value, the preset value is adjusted downward according to the prediction deviation boundary between ordinary motion segments and effective rapid change segments; when most of the motion segments with prediction deviations exceeding the current preset value do not have main skeletal chain coordinated changes and recurring motion structures, the preset value is adjusted upward within the range of not omitting confirmed effective rapid change segments.

[0144] Therefore, the direction of the preset value adjustment is not determined solely by the magnitude of the prediction deviation of subsequent data, but rather by whether effective rapid change segments verified by repeated action structures can be retained, and whether there are too many other action segments that do not form repeated action structures. This allows the action structure verification results to have a reverse effect on the prediction deviation screening conditions.

[0145] For each recurring action structure, the prediction bias of the rapidly changing segments is statistically analyzed to obtain the effective segment bias distribution results; Arrange the prediction deviations of each effective rapid change segment in the action structure from smallest to largest to determine the prediction deviation range that can cover a preset proportion of effective rapid change segments.

[0146] The skeletal changes of each effective rapid change segment in the motion structure are statistically analyzed to obtain the distribution of skeletal changes of the effective segments; The effective fragment skeletal change distribution results should include at least the root node position change range, the major skeletal chain joint rotation change range, the major skeletal chain joint rotation change sequence, and the duration range of rapidly changing fragments.

[0147] It should be noted that, in one specific implementation, the values ​​at the 10% and 90% positions of the effective rapid change segment prediction deviation ranking results can be taken as the lower and upper boundaries of the effective rapid change segment prediction deviation, respectively. Using the lower bound can represent the lowest prediction bias that most effective, rapidly changing segments can achieve, while using the upper bound can exclude the influence of a small number of extreme samples.

[0148] Meanwhile, for motion segments whose prediction deviation does not exceed the preset value and do not show rapid skeletal changes, the deviation distribution results of ordinary motion segments are obtained. The prediction biases of ordinary motion segments are arranged from smallest to largest, and the upper bound covering 95% of ordinary motion segments is defined as the upper boundary of the ordinary bias.

[0149] For the remaining motion segments whose statistical prediction deviation exceeds the preset value but do not form a recurring motion structure, the skeletal change distribution results of the remaining segments are obtained; The remaining skeletal change distribution results are used to represent the data distribution of segments with high prediction bias that lack coordinated changes in the main skeletal chain, lack a stable change sequence, or lack repeating action structures.

[0150] Based on the upper boundary of the ordinary deviation, the lower boundary of the prediction deviation of the effective rapidly changing segments, and the distribution of skeletal changes in the effective segments, determine whether to adjust the preset value.

[0151] When the upper boundary of the ordinary deviation is less than the lower boundary of the prediction deviation of the effective rapid change segment, it indicates that there is a separable range between the prediction deviation of the ordinary action segment and the prediction deviation of the effective rapid change segment. The intermediate value between the upper boundary of the ordinary deviation and the lower boundary of the prediction deviation of the effective rapid change segment is determined as the candidate preset value.

[0152] It should be noted that using the intermediate value can ensure that the prediction deviation of most ordinary action segments does not exceed the candidate preset value, while ensuring that the prediction deviation of most effective fast-changing segments exceeds the candidate preset value, thus entering the judgment process of steps two and three.

[0153] When a valid fast-changing segment has stable main skeletal chain coordinated changes and change order, but the prediction deviation of some of the valid fast-changing segments is lower than the current preset value, it indicates that the current preset value is too high, which may prevent some fast-changing segments in the mutually matching action structures from entering the fast-changing candidate segment recognition process. If the upper boundary of the ordinary deviation is lower than the prediction deviation of the effective rapidly changing segment, the preset value will be adjusted downward to between the upper boundary of the ordinary deviation and the lower boundary of the prediction deviation of the effective rapidly changing segment.

[0154] For example, when the current preset value is a first value, the upper boundary of the normal deviation is a second value lower than the first value, the number of low-deviation effective rapid change segments between the second value and the first value reaches the condition of updating the number of samples, and the proportion of them to the newly added effective rapid change segments reaches the condition of structural stability, the middle position between the second value and the lower boundary of the prediction deviation of the effective rapid change segments is determined as the candidate preset value.

[0155] The number of motion segments whose prediction deviation exceeds the current preset value but do not have coordinated changes in the main skeletal chain, do not have a stable sequence of joint rotation changes in the main skeletal chain, and do not form a recurring motion structure is calculated, and the proportion of these motion segments to the total number of motion segments whose prediction deviation exceeds the current preset value is calculated. When the ratio reaches the limit of the proportion of other segments, it is determined that the current preset value is too low, and the preset value is adjusted upward within the range that the new preset value is not higher than the lower boundary of the prediction deviation of effective rapidly changing segments.

[0156] It should be noted that the upper limit of the preset value adjustment is the lower boundary of the prediction deviation for effective rapidly changing segments; When the lower boundary of the prediction deviation of the effective rapid change segment is not higher than the upper boundary of the ordinary deviation, it indicates that the prediction deviations of the ordinary action segment and the effective rapid change segment overlap. At this time, instead of relying solely on the prediction deviation to distinguish between the two, the preset value is kept at the upper boundary of the ordinary deviation, and the distinction is further made by judging the skeletal changes in step two and the repetition of the action structure in step three.

[0157] Adjust the direction of preset values ​​based on the results of effective fragment skeletal changes and distribution; When a recurring motion structure has rapidly changing segments that all have major skeletal chain coordinated changes that exceed the limits of skeletal position change or joint rotation change, and these rapidly changing segments have not all reached the current preset value, the preset value is adjusted downward. When the prediction deviation exceeds the current preset value, and the remaining motion segments mainly exhibit single-joint jumps or no continuous change sequence, the preset value can be adjusted upwards.

[0158] To avoid frequent changes in preset values ​​due to a small amount of subsequent character skeletal data, set an update sample quantity condition before adjusting the preset values; The preset value adjustment will only be performed when the number of newly added rapid change segments of the same action structure reaches the update sample quantity condition, and the proportion of newly added rapid change segments that meet the same main skeletal chain and the same change sequence reaches the structural stability condition.

[0159] It should be noted that, in one specific implementation, the condition for updating the number of samples can be set to no less than ten newly added rapidly changing segments, and the condition for structural stability can be set to no less than 80% of the newly added rapidly changing segments matching the existing action structure. The above values ​​are feasible examples and can be calibrated based on the scale of character motion data.

[0160] Set the single adjustment range for the preset value; The difference between the preset value after a single adjustment and the preset value before the adjustment shall not exceed a preset proportion of the preset value before the adjustment. For example, the preset ratio can be set to 10%. When the difference between the candidate preset value and the current preset value exceeds the range of a single adjustment, the maximum allowable adjustment amount is adjusted first, and the judgment is continued after the next batch of subsequent character skeleton data is obtained.

[0161] It should be noted that the preset values ​​for each update cycle of the same skeletal pose group are adjusted in the following directions. When the preset values ​​of two adjacent update cycles are adjusted in opposite directions, the adjustment of the next update cycle is temporarily suspended, and the newly added effective rapid change segments and ordinary action segments continue to accumulate until the newly added data once again meets the conditions for the number of update samples and the structural stability.

[0162] When the difference between the candidate preset value generated in multiple consecutive update cycles and the current preset value does not exceed the stable change limit, the preset value of the corresponding bone posture group is determined to have reached a stable state. In a stable state, the preset value will no longer be adjusted based solely on a small number of newly added motion segments; the preset value adjustment will only be restarted when the number of newly added motion segments again meets the condition for updating the number of samples, and the retention ratio of effective segments is lower than the preset retention ratio or the increase ratio of other segments exceeds the allowed change ratio.

[0163] The stable change limit is determined based on the current preset value and the range of a single adjustment, and is less than the maximum allowable adjustment amount in a single adjustment.

[0164] After generating candidate preset values, subsequent character skeleton data that did not participate in motion model parameter solving, action structure matching boundary determination, and candidate preset value determination are used as validation data.

[0165] Based on the candidate preset values, the prediction deviation of the motion segments in the verification data is re-evaluated, and prediction deviation filtering and known motion structure matching are performed respectively to obtain the effective fast-changing segments and the remaining motion segments in the verification data.

[0166] The number of matching segments in the validation data for the recurring action structures that were confirmed before the adjustment is counted, and the number of segments that are retained by entering the rapid change recognition according to the candidate preset value or by matching known action structures is counted. The ratio of the two is used as the effective segment retention ratio.

[0167] At the same time, when using the current preset value and the candidate preset value, the proportion of the remaining action segments to the total number of action segments that enter the subsequent processing is calculated, and the increase between the two proportions is taken as the increase proportion of the remaining segments.

[0168] When the proportion of valid segments retained is not lower than the preset retention proportion, and the proportion of increase of other segments does not exceed the allowable change proportion, the candidate preset value is determined as the adjusted preset value; otherwise, the adjustment is cancelled and the preset value before adjustment is restored.

[0169] In one specific implementation, the preset retention ratio can be set to 95%, and the allowed change ratio can be set to 5%. The above values ​​are feasible examples and can be adjusted according to the number of effective rapid change segments and the scale of character action data, but should simultaneously satisfy the judgment logic that effective rapid change segments are kept recognized and that the number of other action segments does not increase significantly.

[0170] The adjusted preset values ​​are saved according to the skeletal posture group. For motion segments whose skeletal posture group can be determined, the preset values ​​of the corresponding skeletal posture group are used to judge the prediction deviation; for motion segments for which skeletal posture group preset values ​​have not yet been formed, general preset values ​​are used.

[0171] For different recurring action structures, the prediction deviation and skeletal change statistics of effective rapid change segments are saved respectively, and the statistical results are used to adjust the preset values ​​of the corresponding anterior skeletal posture group, without setting separate preset values ​​for action structures.

[0172] When the same motion structure as the fragment to be confirmed appears in the subsequent character skeleton data, and the repetition of the corresponding motion structure reaches the repetition limit, the fragment to be confirmed and the newly added fast change fragment are jointly identified as valid fast change fragments, and the corresponding motion transformation relationship is established or updated. If a fragment to be confirmed does not form a recurring motion structure in the continuously acquired subsequent character skeletal data, it is excluded from the data for establishing motion transition relationships.

[0173] This step involves continuously supplementing recurring motion structures using subsequent character skeletal data, and identifying fast-changing segments that are verified by the front skeleton posture, the changes in the main skeletal chain in the middle, the rear skeleton posture, and the repetition of motion structures as valid fast-changing segments.

[0174] Based on the prediction deviation distribution and skeletal change distribution of effective rapid change segments, ordinary action segments, and other action segments that do not form recurring action structures, the adjustment direction of the preset value and candidate preset values ​​are determined, and the candidate preset values ​​are verified using subsequent character skeletal data that did not participate in the determination of candidate preset values. Only when the adjusted preset value can continue to retain the confirmed effective rapid change segments, and the other action segments that do not form recurring action structures do not increase significantly, is the candidate preset value determined as the adjusted preset value.

[0175] The adjusted preset values ​​are fed back to step one for judging the prediction deviation of subsequent action segments. The prediction deviation generated in step one is used again to limit the skeletal change analysis range in step two. The rapid change candidate segments obtained in step two are verified again by the repetition of the front-middle-back action structure in step three. The valid rapid change segments obtained from the verification are used to adjust the preset values ​​in step four.

[0176] Therefore, this invention does not directly delete abnormal actions based on prediction deviation, nor does it establish the connection relationship between action segments solely based on the similarity of skeletal postures. Instead, it utilizes a repeatable previous action segment—rapid change candidate segment—subsequent action segment structure to verify whether skeletal changes with large prediction deviations belong to real rapid actions. The verified effective rapid change segments are then used in reverse to adjust the prediction deviation screening conditions, forming a self-verification closed loop for character skeletal animation action generation.

[0177] The above embodiments can be implemented, in whole or in part, by software, hardware, firmware, or any other combination thereof. When implemented using software, the above embodiments can be implemented, in whole or in part, in the form of a computer program product.

[0178] Those skilled in the art will recognize that the modules and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and inventive constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0179] In addition, the functional modules in the various embodiments of this application can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module.

[0180] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

[0181] In conclusion, the above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.

Claims

1. A method for automatically generating game animation actions based on character skeletal data, characterized in that, Includes steps; The corresponding bone nodes in the character skeleton data at each acquisition time are determined to obtain the bone pose, and the action segments are divided according to the acquisition time; a motion model is established to obtain the predicted bone pose, and the prediction deviation of each action segment is obtained based on the difference between the predicted bone pose and the actual bone pose. From motion segments whose prediction deviation exceeds a preset value, bone pose ranges whose prediction deviation continuously exceeds a preset value are identified as candidate segments for rapid changes. The candidate segments of rapid change and the action segments in the acquisition time before and after are combined into action structures. The effective rapid change segments are determined based on whether the same action structure appears repeatedly. An action transformation relationship is established to represent the connection between the previous action segment, the effective rapid change segment and the subsequent action segment. Based on the skeletal posture, select the effective fast-changing segment that matches the skeletal posture from the action transition relationship as the target segment, and output the skeletal posture sequence corresponding to the target segment.

2. The method for automatically generating game animation actions based on character skeletal data according to claim 1, characterized in that, Based on the bone node identifier and parent-child connection relationship, the corresponding bone nodes representing the same part of the character in the bone data of different characters are determined, the character orientation and bone ratio are unified, and the root node position, root node rotation state and the rotation state of each bone joint at the same acquisition time are combined into bone posture according to the unified bone node order. When the time interval between the acquisition of skeletal data of adjacent characters exceeds the allowed interval, a time break result is generated at the corresponding position.

3. The method for automatically generating game animation actions based on character skeletal data according to claim 2, characterized in that, Segmenting action segments and obtaining prediction bias includes: The bone posture difference results are obtained based on the root node orientation difference and the corresponding bone joint rotation difference. Bone posture groups are formed based on the bone posture difference results. Bone postures belonging to the same bone posture group and collected in consecutive time are divided into the same action segment. A motion model is established using the current skeleton pose and its change relative to the previous acquisition time as input, and the skeleton pose at the next acquisition time as the desired output. The normalized difference between the predicted skeleton pose and the corresponding skeleton pose is defined as the prediction difference. The prediction difference within the continuous judgment time window is statistically analyzed, and the largest statistical result within the action segment is defined as the prediction bias of the corresponding action segment. The preset values ​​are determined based on the prediction bias distribution of historical motion segments used to build the motion model.

4. The method for automatically generating game animation actions based on character skeletal data according to claim 1, characterized in that, Identifying candidate segments for rapid changes includes: In motion segments where the prediction deviation exceeds a preset value, skeletal poses where the prediction difference continuously exceeds the preset value and the acquisition time is adjacent are merged into a continuous out-of-limit range. The limits of joint rotation variation are determined based on motion segments whose predicted deviation does not exceed a preset value. When at least two adjacent bone joints in the same major skeletal chain within a continuous out-of-limit range exceed the joint rotation change limit and undergo rotation changes in a corresponding order, and the rotation changes correspond in time to the changes in the root node position or the changes in the position of the corresponding limb end bone node, the continuous out-of-limit range is identified as a candidate segment for rapid change.

5. The method for automatically generating game animation actions based on character skeletal data according to claim 4, characterized in that, The formation of action structures includes: Action segments that precede and are temporally continuous with rapidly changing candidate segments are identified as preceding action segments, and action segments that follow and are temporally continuous with rapidly changing candidate segments are identified as following action segments. The main skeletal pose groups of the preceding and following action segments are determined separately, and the main skeletal pose groups of the preceding action segment, the intermediate change description results of the rapidly changing candidate segments, and the main skeletal pose groups of the following action segment are combined into an action structure. The intermediate change description results include the main skeletal chain, the sequence of joint rotation changes, the main movement direction of the root node, and the normalized skeletal change sequence.

6. The method for automatically generating game animation actions based on character skeletal data according to claim 1, characterized in that, Identifying effective rapidly changing segments includes: When the current and subsequent action segments belong to the same main skeletal pose group, the main skeletal chains, the sequence of joint rotation changes, and the main direction of root node movement are the same, and the difference between the normalized skeletal change sequences is not greater than the action structure matching limit, the corresponding action structures are determined to be the same action structures. When the number of identical motion structures from non-overlapping acquisition time ranges reaches the repetition limit, and the corresponding rapid change candidate fragment passes the skeleton connection rationality check, it is determined as a valid rapid change fragment. Rapidly changing candidate segments that do not reach the repetition limit or fail the skeletal connection rationality check are not used to establish the current action transition relationship; The examination of the rationality of skeletal connection includes at least the examination of the changes in the length of the father and son bones and the range of motion of the bone joints.

7. The method for automatically generating game animation actions based on character skeletal data according to claim 6, characterized in that, Establishing action transition relationships includes: The main skeletal pose group of the preceding action segment is taken as the starting state, the main skeletal pose group of the following action segment is taken as the target state, and the skeletal pose sequence arranged according to the acquisition time in the effective rapid change segment is taken as the transformation content from the starting state to the target state. Record effective rapid change segments with the same starting state and target state in the same action transition relationship, and associate and record their main skeletal chain, the main movement direction of the root node, the segment duration and the normalized skeletal change sequence, so that one or more effective rapid change segments can correspond to the same starting state and target state.

8. The method for automatically generating game animation actions based on character skeletal data according to claim 1, characterized in that, Determine the target's main skeletal chain, the target's root node's main movement direction, and the range of the target's action duration based on the target's game action instructions; From the action transition relationship, select effective fast-changing segments whose main skeletal chain, root node main movement direction, and segment duration match the target game action command to obtain candidate call segments; When the same action transition relationship includes multiple candidate call segments, the association between each candidate call segment and its corresponding starting state is preserved.

9. The method for automatically generating game animation actions based on character skeletal data according to claim 8, characterized in that, Selecting the target segment includes: Based on the differences in bone posture between the current bone posture and each bone posture group, determine the bone posture group to which the current bone posture belongs; Candidate callable segments are identified as those whose main skeletal pose group of the previous action segment is the same as the skeletal pose group of the current skeletal pose. When there is only one callable fragment, it is designated as the target fragment; when there are multiple callable fragments, the target fragment is selected based on the degree of matching between the main skeletal chain, the main movement direction of the root node, and the fragment duration with the target game action command.

10. The method for automatically generating game animation actions based on character skeletal data according to claim 9, characterized in that, The output skeleton pose sequence includes: Read the root node position change, root node rotation state and each bone joint rotation state in the target segment according to the acquisition time sequence, overlay the root node position change onto the current character's root node position, and combine it with the root node rotation state and each bone joint rotation state to form the animation bone posture. When the duration of the target action differs from the original duration of the target segment, the output time of each animation bone posture is adjusted proportionally to the two. For the output time located between adjacent acquisition times, pose interpolation is performed based on the root node state and the state of each bone joint corresponding to the adjacent acquisition time, and the resulting animation bone poses are sequentially output to the bone drive component of the game character to generate game animation actions.