An animation redirection method and device, a computer device and a storage medium
By using a universal skeleton matching template to divide body parts during animation retargeting, determining the correspondence between the source and target objects, and adjusting skeleton rotation, the problem of poor animation effects in non-humanoid creature animation production is solved, and the applicability and accuracy of animation data for various creature types are achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-18
- Publication Date
- 2026-03-03
AI Technical Summary
Existing motion reuse techniques are less effective in animation of non-humanoid creatures, especially when there are significant differences in skeletal structure, making it difficult to effectively transfer animation data.
By obtaining the skeletal models of the source and target objects, and using a general skeletal matching template to divide body parts and determine the correspondence, the animation information of the source object is redirected to the skeletal model of the target object, including skeletal rotation adjustment and shape comparison to generate the target animation model.
It improves the applicability of animation redirection, making it suitable for various types of creatures and enhancing the accuracy and consistency of animation effects.
Smart Images

Figure CN114742926B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, specifically to an animation redirection method, apparatus, computer device, and storage medium. Background Technology
[0002] With the development of technology, character animation is playing an increasingly important role in many fields such as scene reproduction, film and television production, and medical simulation. Traditional character animation is generally completed by animators manually adjusting bones or controllers, which often requires a lot of manpower and financial resources. With the development of motion capture technology and computer technology, motion reuse technology, that is, the method of using existing animation to create more detailed and specific movements, has been increasingly widely used.
[0003] In related technologies, motion reuse is mainly concentrated in the animation of bipedal humanoid creatures. For example, common motion capture technology requires live actors to wear relevant equipment and capture their movement information through cameras, and then project the movements onto the created character. In non-humanoid creature scenarios, motion reuse technology is used relatively less, and often only supports the animation of quadrupedal creatures. Existing motion reuse technologies for non-humanoid creatures usually just rigidly transfer the rotation of the corresponding skeletons, thus requiring that the skeletal orientation of the source and target creatures be roughly the same, with not too much difference. This results in poor animation effects when the animation data of the source creature is transferred to the target creature. Summary of the Invention
[0004] This application provides an animation redirection method, apparatus, computer device, and storage medium, which can improve the applicability of animation redirection.
[0005] This application provides an animation redirection method, including:
[0006] Obtain the skeletal models of the source object and the target object;
[0007] Obtain a general skeleton matching template, which includes multiple body parts obtained by dividing the biological body, and each body part includes at least one skeleton;
[0008] Based on the matching results of the source object skeleton model and the target object skeleton model with the body parts of the general skeleton matching template, the correspondence between the body parts of the source object skeleton model and the target object skeleton model is determined.
[0009] Based on the correspondence of the body parts, the animation information of the source object skeleton model is redirected to the target object skeleton model to obtain the target animation model of the target object skeleton model.
[0010] Accordingly, this application also provides an animation redirection device, including:
[0011] The first acquisition unit is used to acquire the skeletal model of the source object and the skeletal model of the target object;
[0012] The second acquisition unit is used to acquire a general skeleton matching template, which includes multiple body parts obtained by dividing the biological body, and each body part includes at least one skeleton.
[0013] The determining unit is used to determine the correspondence between the body parts of the source object skeleton model and the target object skeleton model based on the matching results of the body parts of the source object skeleton model and the target object skeleton model with the general skeleton matching template, respectively.
[0014] The first processing unit is used to redirect the animation information of the source object skeleton model to the target object skeleton model according to the correspondence of the body parts, so as to obtain the target animation model of the target object skeleton model.
[0015] In some embodiments, the first processing unit includes:
[0016] The first determining subunit is used to determine the target bone in the target object body part corresponding to the source bone in the source object body part, based on the target object body part corresponding to the source object body part.
[0017] The adjustment subunit is used to rotate and adjust the target bone based on the bone rotation amount of the source bone corresponding to the target bone, so as to obtain the adjusted animation model;
[0018] The first comparison subunit is used to compare the shape of the first bone in the source object skeleton model located at the specified body part with the second bone in the target object skeleton model located at the specified body part, and obtain the comparison result.
[0019] The second determining subunit is used to determine the target animation model based on the adjusted animation model and the comparison result.
[0020] In some embodiments, the second determining subunit is specifically used for:
[0021] If the comparison result indicates that the first bone and the second bone have the same shape, then the target animation model is obtained based on the adjusted animation model;
[0022] If the comparison result indicates that the first bone and the second bone have different shapes, then the adjusted animation model is adjusted again according to the position information of the first bone to obtain the target animation model.
[0023] In some embodiments, the second determining subunit is specifically used for:
[0024] If the comparison result indicates that the first bone and the second bone have the same shape, then the target animation model is obtained based on the adjusted animation model;
[0025] If the comparison result indicates that the first bone and the second bone have different shapes, then the target position of the second bone is determined based on the position information; the bone rotation difference is determined according to the target position and the initial position of the second bone in the adjusted animation model; the bones in the adjusted animation model are rotated and adjusted based on the bone rotation difference to obtain the target animation model.
[0026] In some embodiments, the second determining subunit is specifically used for:
[0027] If the comparison result indicates that the first bone and the second bone have the same shape, then the target animation model is obtained based on the adjusted animation model;
[0028] If the comparison result indicates that the first bone and the second bone have different shapes, then obtain the first offset and first height of the first bone in the specified plane, and the second offset and second height of the second bone in the specified plane; calculate the target position based on the position information, the first offset, the first height, the second offset, and the second height; determine the bone rotation difference based on the target position and the initial position of the second bone in the adjusted animation model; rotate and adjust the bones in the adjusted animation model based on the bone rotation difference to obtain the target animation model.
[0029] In some embodiments, the first processing unit further includes:
[0030] The second comparison subunit is used to compare the number of source bones in the body part of the source object with the number of target bones in the body part of the target object.
[0031] The third determining subunit is used to determine the extra bones from the source object body part or the target object body part if the number of source bones is not equal to the number of target bones.
[0032] In some embodiments, the adjustment subunit is specifically used for:
[0033] If the redundant bone belongs to the body part of the source object, then the bone rotation of the bone corresponding to the adjacent bone in the body part of the target object is adjusted according to the bone rotation of the redundant bone and the adjacent bone of the redundant bone, and the bone rotation of the bone corresponding to the other bones in the body part of the target object is adjusted according to the bone rotation of the remaining bones in the body part of the source object excluding the redundant bone.
[0034] If the extra bone belongs to the body part of the target object, then the bone rotation amount of the extra bone is adjusted according to the bone rotation amount of the bone corresponding to the adjacent bone in the body part of the source object, and the bone rotation amount of the bone corresponding to each bone in the body part of the target object is adjusted according to the bone rotation amount of each bone in the body part of the source object.
[0035] In some embodiments, the adjustment subunit is further specifically used for:
[0036] Calculate the ratio of the number of source bones in the body parts of the source object to the number of target bones in the body parts of the target object;
[0037] Based on the stated quantity ratio and the bone rotation of each source bone in the body part of the source object, adjust the bone rotation of each target bone in the body part of the target object.
[0038] In some embodiments, the determining unit includes:
[0039] The first matching subunit is used to match the source object skeleton model with the body parts of the general skeleton matching template, and to determine the source object body parts that are successfully matched with the source object skeleton model from the body parts of the general skeleton matching template.
[0040] The second matching subunit is used to match the target object skeleton model with the body parts of the general skeleton matching template, and to determine the target object body parts that are successfully matched with the target object skeleton model from the body parts of the general skeleton matching template.
[0041] The fourth determining subunit is used to obtain the correspondence between the body parts of the source object skeleton model and the target object skeleton model based on the source object body parts and the target object body parts corresponding to the same body part of the general skeleton matching template.
[0042] In some embodiments, the first acquisition unit includes:
[0043] The first acquisition subunit is used to sequentially acquire the source object skeleton model in each animation frame according to the playback order of the animation frames of the source object animation, and to acquire the target object skeleton model from the target object's initial frame.
[0044] In some embodiments, the first processing unit includes:
[0045] The processing subunit is used to redirect the animation information of each source object skeleton model to the target object skeleton model according to the correspondence between the body parts of each source object skeleton model and the target object skeleton model, so as to obtain multiple target animation models of the target object skeleton model.
[0046] In some embodiments, the device further includes:
[0047] The second processing unit is used to perform smooth constraint processing on two adjacent target animation models according to the arrangement order of the multiple target animation models, so as to obtain multiple target animation models after processing.
[0048] The generation unit is used to generate the target animation of the target object skeleton model based on the processed multiple target animation models.
[0049] Accordingly, this application also provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes any of the animation redirection methods provided in this application.
[0050] Accordingly, embodiments of this application also provide a computer-readable storage medium storing multiple instructions adapted for loading by a processor to execute the animation redirection method described above.
[0051] This application embodiment obtains a universal skeleton matching template by dividing the biological model into several body parts. The source biological skeleton model and the target biological skeleton model are matched based on the universal skeleton matching template to obtain the correspondence between body parts. Then, the animation data of the source biological skeleton model is redirected to the target biological skeleton model according to the correspondence between body parts. This is applicable to the redirection of animation data of various types of organisms, thereby improving the applicability of animation redirection. Attached Figure Description
[0052] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0053] Figure 1This is a flowchart illustrating an animation redirection method provided in an embodiment of this application.
[0054] Figure 2 This is a flowchart illustrating another animation redirection method provided in an embodiment of this application.
[0055] Figure 3 This is a schematic diagram of a biological skeleton model provided in an embodiment of this application.
[0056] Figure 4 This is a schematic diagram of another biological skeleton model provided in an embodiment of this application.
[0057] Figure 5 This is a structural block diagram of an animation redirection device provided in an embodiment of this application.
[0058] Figure 6 A schematic diagram of the structure of a computer device provided in an embodiment of this application. Detailed Implementation
[0059] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of the embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0060] This application provides an animation redirection method, apparatus, storage medium, and computer device. Specifically, the animation redirection method of this application can be executed by a computer device, which can be a terminal or a server. The terminal can be a smartphone, tablet computer, laptop computer, touch screen, personal computer (PC), personal digital assistant (PDA), or other terminal device. The server can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms.
[0061] For example, the computer device can be a terminal that can acquire a source object skeleton model and a target object skeleton model; acquire a general skeleton matching template, which includes multiple body parts obtained by dividing the biological body, each body part including at least one bone; determine the correspondence between the body parts of the source object skeleton model and the target object skeleton model and the general skeleton matching template based on the matching results of the body parts of the source object skeleton model and the target object skeleton model respectively; and redirect the animation information of the source object skeleton model to the target object skeleton model according to the correspondence between the body parts, thereby obtaining the target animation model of the target object skeleton model.
[0062] Based on the above problems, this application provides a first method, apparatus, computer device and storage medium for animation redirection, which can improve the applicability of animation redirection.
[0063] The following sections provide detailed descriptions of each example. It should be noted that the order in which the embodiments are described is not intended to limit the preferred order of the embodiments.
[0064] This application provides an animation redirection method, which can be executed by a terminal or a server. This application uses the execution of the animation redirection method by a terminal as an example for illustration.
[0065] Please see Figure 1 , Figure 1 This is a flowchart illustrating an animation redirection method provided in an embodiment of this application. The specific flow of the animation redirection method is as follows:
[0066] 101. Obtain the skeletal model of the source object and the skeletal model of the target object.
[0067] In this embodiment, the source object skeleton model is the skeleton model of the source object in a certain animation frame of the source object animation. The source object animation refers to the dynamic animation effect designed for the source object, so the source object skeleton model is the skeleton model of the source object in a certain static animation frame of the source object animation; the target object skeleton model is the initial skeleton model of the target object.
[0068] The source object and the target object can be organisms of the same or different kinds.
[0069] In some embodiments, in order to generate an animation effect for a target object based on the animation effect of a source object, the step "obtaining the skeletal model of the source object and the skeletal model of the target object" may include the following operations:
[0070] The source object's skeletal model is obtained sequentially from each animation frame according to the playback order of the source object's animation frames, and the target object's skeletal model is obtained from the target object's initial frame.
[0071] The source object animation includes multiple animation frames, which are played sequentially in a pre-designed playback order to display the animation effect of the source object.
[0072] For example, the playback order of multiple animation frames in the source object animation can be: first animation frame, second animation frame, third animation frame, and fourth animation frame. Then, according to this playback order, the source object bone model in each animation frame is obtained sequentially from the source object animation, resulting in the source object bone model in the first animation frame, the source object bone model in the second animation frame, the source object bone model in the third animation frame, and the source object bone model in the fourth animation frame.
[0073] The initial frame of the target object can be an image frame designed based on the static state of the target object, which includes the skeletal model of the target object in its static state.
[0074] 102. Obtain a general skeleton matching template.
[0075] The general skeletal matching template includes multiple body parts obtained by dividing the organism's body, and each body part includes at least one bone. For example, the general skeletal matching template may include areas such as legs, spine, neck, tail, wings, and head.
[0076] In this embodiment, the organism used to design the universal skeletal matching template does not specifically refer to any one type of organism; it can be a common or uncommon type of organism. Specifically, when obtaining the universal skeletal matching template by classifying the body of an organism, multiple organisms can be obtained, and the body parts of different types of organisms can be classified. Then, based on the multiple classification results, a universal skeletal matching template is obtained, which can be applied to multiple types of organisms.
[0077] 103. Based on the matching results of the source object skeleton model and the target object skeleton model with the body parts of the general skeleton matching template, determine the correspondence between the body parts of the source object skeleton model and the target object skeleton model.
[0078] In some embodiments, to improve the versatility of the source object animation effect, the step "determining the correspondence between the body parts of the source object skeletal model and the target object skeletal model based on the matching results of the body parts of the source object skeletal model and the target object skeletal model with the general skeletal matching template" may include the following operations:
[0079] Match the source object's skeletal model with the body parts of the general skeletal matching template, and identify the source object's body parts that successfully match the source object's skeletal model from the body parts of the general skeletal matching template.
[0080] Match the target object's skeletal model with the body parts of a general skeletal matching template, and identify the target object's body parts that successfully match the target object's skeletal model from the body parts of the general skeletal matching template.
[0081] Based on the source object's body parts and the target object's body parts corresponding to the same body part in the general skeleton matching template, the correspondence between the body parts of the source object's skeleton model and the target object's skeleton model is obtained.
[0082] The general skeleton matching template includes multiple body parts, such as: head, neck, spine, tail, wings, and legs. Wings can include multiple wings, and legs can include multiple legs, etc.
[0083] Specifically, the source object's skeletal model is matched with each body part in the general skeletal matching template to obtain the source object's body parts included in the source object's skeletal model; the target object's skeletal model is matched with each body part in the general skeletal matching template to obtain the target object's body parts included in the target object's skeletal model.
[0084] For example, a general skeleton matching template includes body parts such as head, neck, spine, tail, wings, and legs. Then, the source object skeleton model is matched with each body part, and the source object body parts included in the source object skeleton model are obtained based on the successfully matched body parts. For example, the source object body parts may include: head, neck, spine, tail, and legs. Similarly, the target object skeleton model is matched with each body part, and the target object body parts included in the target object skeleton model are obtained based on the successfully matched body parts. For example, the target object body parts may include: head, neck, spine, tail, and legs.
[0085] Furthermore, based on the matching results between the source object's skeletal model and the general skeletal matching template, and the matching results between the target object's skeletal model and the general skeletal matching template, the correspondence between the body parts of the source object's skeletal model and the target object's skeletal model is obtained.
[0086] For example, the body parts included in the source object's skeletal model can be: source object head, source object neck, source object spine, source object tail, and source object legs; the body parts included in the target object's skeletal model can be: target object head, target object neck, target object spine, target object tail, and target object legs. The correspondence between the body parts in the source and target object skeletal models is established as follows: source object head corresponds to target object head, source object neck corresponds to target object neck, source object spine corresponds to target object spine, source object tail corresponds to target object tail, and source object legs correspond to target object legs.
[0087] In some embodiments, to save processing resources, the following steps may be included before the step "matching the source object's skeletal model with the body parts of a generic skeletal matching template":
[0088] Determine if there is a matching result between the source object's skeletal model and the body part of the general skeletal matching template.
[0089] In this embodiment, the animation effect of the source object can be reused on other target objects. When the animation effect of the source object is reused on other target objects, it is necessary to match the body parts of the source object's skeletal model with the body parts of the general skeletal matching template to obtain the matching result of the body parts of the source object's skeletal model and the general skeletal matching template. The matching result is stored, so that the next time it is used, it is not necessary to match the body parts of the source object's skeletal model with the body parts of the general skeletal matching template. The previous matching result can be obtained directly, thereby saving operation steps.
[0090] 104. Based on the correspondence of body parts, redirect the animation information of the source object's skeletal model to the target object's skeletal model to obtain the target animation model of the target object's skeletal model.
[0091] Redirecting the animation information of the source object's skeletal model to the target object's skeletal model means setting the animation of the target object's skeletal model based on the animation information of the source object's skeletal model.
[0092] In some embodiments, to improve the animation redirection effect, the step "redirecting the animation information of the source object's skeletal model to the target object's skeletal model according to the correspondence of body parts, thereby obtaining the target animation model of the target object's skeletal model" may include the following operations:
[0093] Based on the target object body part corresponding to the source object body part, determine the target bone in the target object body part corresponding to the source bone in the source object body part;
[0094] The target bone is rotated and adjusted based on the bone rotation of the source bone corresponding to the target bone to obtain the adjusted animation model;
[0095] The first bone in the source object's skeletal model located at a specified body part is compared with the second bone in the target object's skeletal model located at the specified body part to obtain the comparison result.
[0096] The target animation model is determined based on the adjusted animation model and the comparison results.
[0097] The correspondence between the body parts of the source object skeleton model and the target object skeleton model includes: the body parts of the target object skeleton model that correspond to the body parts of the source object in the source object skeleton model, that is, the body parts of the target object that correspond to the body parts of the source object; the animation information includes at least: the bone rotation amount of each source bone in the source object skeleton model.
[0098] Specifically, since the body parts of the source object and the body parts of the target object are composed of skeletons, the correspondence between the source skeleton and the target skeleton can be obtained based on the correspondence between the body parts of the source object and the body parts of the target object.
[0099] For example, if the source object's body part can be its tail, then the target object's body part corresponding to the source object's tail is the target object's tail. The bones of the source object's tail can include: the first coccyx, the second coccyx, with the connection order in the source object's skeletal chain being: first coccyx, second coccyx. The bones of the target object's tail can include: the third coccyx, the fourth coccyx, with the connection order in the target object's skeletal chain being: third coccyx, fourth coccyx. Therefore, the skeletal correspondence can be determined as: the first coccyx corresponds to the third coccyx, and the second coccyx corresponds to the fourth coccyx.
[0100] Furthermore, after determining the target bone corresponding to the source bone, the rotation amount of the target bone corresponding to the source bone can be adjusted according to the rotation amount of the source bone, thereby adjusting the target bone.
[0101] For example, if the rotation of the first coccyx can be a first rotation and the rotation of the second coccyx can be a second rotation, then the rotation of the third coccyx, corresponding to the first coccyx, can be set to the first rotation, and the rotation of the fourth coccyx, corresponding to the second coccyx, can be set to the second rotation. In this way, the rotation values of the bones of each body part in the source object's skeletal model can be reused on the bones of each body part in the target object's skeletal model.
[0102] In this embodiment, to further improve the animation retargeting effect, the first bone in the source object's skeletal model located at a specified body part can be compared with the second bone in the target object's skeletal model located at the specified body part to obtain the comparison result. Then, the target animation model is further determined based on the adjusted animation model and the comparison result.
[0103] The specified body part can be any body part, such as the foot. Since the foot shape of the source object and the target object may differ, after reusing the bone rotation of the foot bone of the source object's skeletal model to the foot bone of the target object's skeletal model, there may be abnormal contact between the foot of the target object's skeletal model and the ground, such as the foot sticking into the ground or the foot sliding.
[0104] In some embodiments, to improve the motion effect of the target object's skeletal model, the step "determine the target animation model based on the adjusted animation model and comparison results" may include the following operations:
[0105] If the comparison result indicates that the first bone and the second bone have the same shape, then the target animation model is obtained based on the adjusted animation model;
[0106] If the comparison result indicates that the shapes of the first and second bones are different, the adjusted animation model is then adjusted again based on the position information of the first bone to obtain the target animation model.
[0107] Specifically, if the first bone in the source object's skeletal model located at a specified body part has the same shape as the second bone in the target object's skeletal model located at the specified body part, then there is no need to adjust the adjusted animation model again, and the adjusted animation model can be used as the target animation model.
[0108] Specifically, if the shape of the first bone in the source object's skeletal model located at a specified body part is different from that of the second bone in the target object's skeletal model located at the specified body part, then the adjusted animation model needs to be adjusted again, and the adjusted animation model is used as the target animation model.
[0109] In some embodiments, to ensure the animation effect of the target object's skeletal model, the step "re-adjusting the adjusted animation model based on the position information of the first bone to obtain the target animation model" may include the following operations:
[0110] Determine the target location of the second skeleton based on location information;
[0111] Determine the bone rotation difference based on the target position and the initial position of the second bone in the adjusted animation model;
[0112] The target animation model is obtained by rotating and adjusting the bones in the adjusted animation model based on the bone rotation difference.
[0113] First, the position information of the first bone of a specified body part in the skeletal model of the source object can be obtained. This position information can be the position of the first bone in the skeletal model of the source object. Then, the target position of the second bone can be calculated based on this position information. This target position is the position where the second bone needs to be adjusted.
[0114] In some embodiments, the step "determine the target location of the second bone based on location information" may include the following operations:
[0115] Obtain the first offset and first height of the first bone in the specified plane, and the second offset and second height of the second bone in the specified plane;
[0116] The target position is calculated based on the location information, the first offset, the first altitude, the second offset, and the second altitude.
[0117] In this embodiment, considering the difference in body size between the source object and the target object, a scaling factor is calculated based on the body sizes of the source and target objects. This scaling factor is then applied to the first bone of a specified body part of the source object's skeletal model to obtain the position of the second bone of the specified body part of the initial target object's skeletal model. Specifically, the scaling factor calculation formula is as follows:
[0118]
[0119] in, H represents the offsets of the first bone in the target object's skeletal model and the second bone in the source object's skeletal model on a specified plane (such as the xz plane). tar H src These are the heights of the first bone in the target object's skeletal model and the second bone in the source object's skeletal model, respectively.
[0120] in, The initial position of the second bone is then calculated as follows:
[0121]
[0122] In some embodiments, considering that the relative positional relationships of bones in designated body parts of different organisms may also differ, embodiments of this application may record the deviation between the source object bone model and the target object bone model under Tpose, calculate the transformation relationship of the bones corresponding to the designated body parts, apply the transformation relationship to the initial position of the second bone, and obtain the final position of the second bone.
[0123] Tpose refers to skeletal pose, which is the standard action used for skeletal binding before object animation.
[0124] Specifically, the positions of the bones of the i-th specified body part in the source object's skeletal model and the target object's skeletal model under Tpose are obtained as follows: Then, the final position of the second bone, i.e. the target position, can be calculated as follows:
[0125]
[0126] in, R represents the initial position of the first bone within the target object's skeletal model. y This is the component of the root bone's rotation around the y-axis.
[0127] In this embodiment, to balance the relationship between action similarity and arrival position, an adjustable weighting coefficient (IK / FK fusion coefficient) α is set, which can be used to fuse the results of direct migration rotation data and the results of IK inverse calculation. The fused end node position is:
[0128]
[0129] In this embodiment of the application, in order to avoid bone reversal when rotating the bones of the target object's skeletal model, the bone twisting direction can be constrained to be consistent with the Tpose definition.
[0130] Then, based on the target position and the initial position of the second bone in the adjusted animation model, the bone rotation difference is determined.
[0131] Specifically, after obtaining the final position of the second bone, inverse kinematics (IK) is used to iteratively calculate the new bone rotation based on the results of calculating the bone rotation of the target object's bone model from the bone rotation of the bones in the source object's bone model. This allows the second bone of the target object's bone model to reach the final position calculated above. The updated bone rotation difference can be:
[0132]
[0133] Where J is the Jacobian matrix (a Jacobian matrix is a matrix formed by arranging first-order partial derivatives in a certain way), and I is the identity matrix (all elements on the diagonal from the top left to the bottom right corner (called the main diagonal) are 0 except for 1). This is the difference between the initial position and the specified position of the second bone. Inverse kinematics (IK) uses a target-oriented approach to locate the target object, and the program calculates the position and orientation of the chain ends. After all calculations are complete, the final position of the hierarchy is called the IK solution. Many IK solvers can be applied to hierarchies. Inverse kinematics begins with the links and pivot points, using them as a foundation, and then adds the following principles: joints are constrained by specific position and rotation properties, and the position and orientation of the parent object are determined by the position and orientation of the child objects.
[0134] Then, the bones in the adjusted animation model are rotated based on the bone rotation difference, that is, the bone rotation of the bones in the target object's bone model is readjusted.
[0135] In some embodiments, due to differences in bone dimensions between the source object skeletal model and the target object skeletal model, the number of bones in the target object skeletal model corresponding to the body parts of the source object in the source object skeletal model may differ. To reuse the bone rotation amounts of the same body parts with different bone numbers, the following steps may be included before the step "adjusting the target bone based on the bone rotation amount of the source bone corresponding to the target bone to obtain the adjusted animation model":
[0136] Compare the number of source bones in the body parts of the source object with the number of target bones in the body parts of the target object;
[0137] If the number of source bones is not equal to the number of target bones, then the extra bones are determined from either the source object's body parts or the target object's body parts.
[0138] For example, the body part of the source object can be the tail of the source object, the body part of the target object can be the tail of the target object, the tail of the source object corresponds to the tail of the target object, the number of bones in the tail of the source object can be the first number, and the number of bones in the tail of the target object can be the second number.
[0139] Then, the first quantity is compared with the second quantity. If the first quantity and the second quantity are not equal, the redundant bones can be determined from the body parts of the source object or the body parts of the target object. The redundant bones are the bones for which there is no corresponding bone.
[0140] The step "Adjusting the rotation of the target bone based on the bone rotation of the source bone corresponding to the target bone to obtain the adjusted animation model" can include the following operations:
[0141] If the extra bone belongs to the body part of the source object, then adjust the bone rotation of the bones corresponding to the adjacent bones in the body part of the target object according to the bone rotation of the extra bone and the bones adjacent to the extra bone, and adjust the bone rotation of the bones corresponding to the other bones in the body part of the target object according to the bone rotation of the other bones in the body part of the source object excluding the extra bone.
[0142] If the extra bone belongs to the body part of the target object, then adjust the bone rotation of the extra bone according to the bone rotation of the bone corresponding to the bone in the body part of the source object. Also, adjust the bone rotation of the bones corresponding to each bone in the body part of the target object according to the bone rotation of each bone in the body part of the source object.
[0143] In this embodiment, when the number of source bones is not equal to the number of target bones, a nearest neighbor allocation method is designed to solve the motion redirection problem for different numbers of bones in corresponding body parts.
[0144] Specifically, if the extra bone belongs to the body part of the source object, it can be determined that there is no bone in the body part of the target object that corresponds to the extra bone. In order to ensure the motion reuse effect, the bone rotation amount of the extra bone can be superimposed on the bone rotation amount of the adjacent bone that is adjacent to the extra bone to obtain the superimposed bone rotation amount. Then, the superimposed bone rotation amount is reused on the target bone corresponding to the adjacent bone in the body part of the target object.
[0145] For example, the source object's body parts include: bone A, bone B, and bone C, and the target object's body parts include: bone D and bone E. Among them, bone A corresponds to bone D, and bone B corresponds to bone E. Then, the redundant bone can be determined as: bone C. When reusing bone rotation, the bone rotation of bone C is superimposed on the bone rotation of the adjacent bone B to obtain the superimposed rotation. Then, the rotation of bone E is adjusted according to the superimposed rotation.
[0146] Specifically, if the extra bone belongs to a body part of the target object, it can be determined that there is no bone in the source body part that corresponds to the extra bone. In order to ensure the motion reuse effect, the bone rotation of the extra bone can be adjusted according to the bone rotation of the bone corresponding to the adjacent bone in the source body part.
[0147] For example, the source object's body parts include: bone A, bone B, and the target object's body parts include: bone C, bone D, and bone E. Among them, bone A corresponds to bone C, and bone B corresponds to bone D. Then, the extra bone can be determined as: bone E. When reusing bone rotation, the rotation of bone E is adjusted according to the bone rotation of bone B.
[0148] In some embodiments, when the number of source bones is not equal to the number of target bones, a proportional allocation method is also designed to solve the motion redirection problem for different numbers of bones in corresponding body parts. Therefore, when the number of source bones is not equal to the number of target bones, the following steps may also be included:
[0149] Calculate the ratio of the number of source bones in the body parts of the source object to the number of target bones in the body parts of the target object;
[0150] Based on the quantity ratio and the bone rotation of each source bone in the body part of the source object, adjust the bone rotation of each target bone in the body part of the target object.
[0151] Specifically, the proportional allocation method calculates the ratio of the number of target bones to the number of source bones, and then allocates the bone rotation of the source bones to the target bones according to this ratio and the hierarchical relationship between the bones.
[0152] For example, the source skeleton can have 3 bones, and the target skeleton can have 4 bones. The ratio of the source skeleton to the target skeleton can be calculated as 3 / 4. Then, 3 / 4 of the rotation of the first bone of the source object's body part is allocated to the first bone of the target body part. 1 / 4 of the rotation of the first bone of the source object's body part is added to 2 / 4 of the rotation of the second bone of the source object's body part and allocated to the second bone of the target body part. 2 / 4 of the rotation of the second bone of the source object's body part is added to 1 / 4 of the rotation of the third bone of the source object's body part and allocated to the second bone of the target body part... and so on, until the rotation of each bone in the source object's skeleton model is allocated to the bones of the target object's skeleton model.
[0153] In some embodiments, the nearest neighbor allocation method and the proportional allocation method can be applied to the allocation of bone rotation in different body parts. Different rotation allocation methods can be selected when reusing bone rotation in different body parts according to the actual situation, so as to achieve a better motion reuse effect.
[0154] In some embodiments, in order to generate a complete animation effect for the target object, the step "redirecting the animation information of the source object's skeletal model to the target object's skeletal model according to the correspondence of body parts, to obtain the target animation model of the target object's skeletal model" may include the following operations:
[0155] Based on the correspondence between the body parts of each source object skeleton model and the target object skeleton model, the animation information of each source object skeleton model is redirected to the target object skeleton model, resulting in multiple target animation models of the target object skeleton model.
[0156] For example, the playback order of multiple animation frames in the source object animation can be: first animation frame, second animation frame, third animation frame, and fourth animation frame. Then, according to this playback order, the source object bone model in each animation frame is obtained sequentially from the source object animation, resulting in the source object bone model in the first animation frame, the source object bone model in the second animation frame, the source object bone model in the third animation frame, and the source object bone model in the fourth animation frame.
[0157] Furthermore, based on the source object skeletal model in the first animation frame, the source object skeletal model in the second animation frame, the source object skeletal model in the third animation frame, and the source object skeletal model in the fourth animation frame, the motion settings are performed on the target object skeletal model to obtain multiple target animation models, including: the first target animation model, the second target animation model, the third target animation model, and the fourth target animation model.
[0158] In some embodiments, after obtaining multiple target animation models of the target object's skeletal model, in order to generate animation effects for the target object's skeletal model, the following steps may be included:
[0159] Based on the arrangement order of multiple target animation models, smoothing constraint processing is applied to two adjacent target animation models to obtain multiple processed target animation models.
[0160] The target animation is generated based on the skeletal model of the target object after processing multiple target animation models.
[0161] In this embodiment, to maintain the continuity of the action, we added inter-frame smoothing constraints, the calculation formula of which is:
[0162] L smooth =Q cur -Q pre .
[0163] Among them, L smooth It is the loss term, Q cur Q is the rotation amount of the current target animation model. pre It is the rotation amount of the previous target animation model located at the current target animation model.
[0164] The above-mentioned inter-frame smoothing constraints are used to process multiple target animation models to obtain multiple processed target animation models. Then, the target animation of the target object skeleton model is generated based on the multiple processed target animation models.
[0165] In some embodiments, to facilitate modification of the target animation, after the step of "generating the target animation of the target object's skeletal model based on the processed multiple target animation models", the following steps may also be included:
[0166] Save the target animation as an animation file in the specified format.
[0167] This involves saving the target animation as an animation file in a specified format, such as an FBX file (a general model format that supports all major 3D data elements as well as 2D, audio, and video media elements).
[0168] Furthermore, users or developers can open the animation file using design tools and modify the target animation. Specifically, by obtaining the position information of the target object's skeletal model in world space (the system's absolute coordinate system) for each frame in the FBX file, and then passing this position information to the controller, animators can make secondary modifications to the generated target animation.
[0169] The controller is a proxy object used by animators to control objects. It integrates constraints, IK (In-Knowledge) functions, and other features to facilitate motion creation.
[0170] Finally, after the generated controller animation file is handed over to the animator, the animator can add animation layers on the basis of the target animation, or directly adjust the animation curve of the corresponding controller for secondary animation repair, so as to complete the animation design of the target object's skeletal model.
[0171] This application discloses an animation retargeting method, which includes: obtaining a source object skeletal model and a target object skeletal model; obtaining a general skeletal matching template, the general skeletal matching template including multiple body parts obtained by dividing the biological body, each body part including at least one bone; determining the correspondence between the body parts of the source object skeletal model and the target object skeletal model based on the matching results of the body parts of the general skeletal matching template; and retargeting the animation information of the source object skeletal model to the target object skeletal model according to the body part correspondence, thereby obtaining the target animation model of the target object skeletal model. This improves the applicability of animation retargeting.
[0172] Based on the above description, the animation redirection method of this application will be further illustrated with examples below. Please refer to... Figure 2 , Figure 2 The following is a flowchart illustrating another animation redirection method provided in this application embodiment. Taking the application of this animation redirection method to a terminal as an example, the specific process can be as follows:
[0173] 201. The terminal acquires the source biological skeleton model and the target biological skeleton model.
[0174] Among them, the target organism's skeletal model needs to be animated based on the animation information of the source organism's skeletal model.
[0175] For example, please see Figure 3 , Figure 3 This is a schematic diagram of a biological skeleton model provided in an embodiment of this application. Figure 3 A model of the source organism's skeleton is shown, in which the skeletal chains of the source organism are labeled, and see also [link to relevant documentation]. Figure 4 , Figure 4 This is a schematic diagram of another biological skeleton model provided in an embodiment of this application. Figure 4 A target biological skeleton model is shown, in which the target biological skeletal chains are labeled.
[0176] Specifically, the topology of a biological skeleton can be a tree structure, with the bones in different parts of the organism composed of a directed acyclic chain. In this embodiment, a skeletal chain is determined by the joints at the beginning and end of the skeletal chain in the biological skeleton model, which further allows for the identification of different parts of the organism.
[0177] 202. The terminal matches the source biological skeleton model with the target biological skeleton model based on a general skeleton matching template to obtain the correspondence between the body parts of the source biological skeleton model and the target biological skeleton model.
[0178] In this embodiment of the application, a general skeleton matching template is pre-designed, which includes multiple biological body parts: legs, spine, neck, tail, wings, and head area, and is equipped with a skeleton matching list, which can achieve matching of arbitrary skeleton topologies.
[0179] Specifically, the source organism skeleton model is first matched with a general skeleton matching template to obtain the source body parts included in the source organism skeleton model. Then, the target organism skeleton model is matched with a general skeleton matching template to obtain the target body parts included in the target organism skeleton model. Finally, the source body parts are matched with the target body parts to obtain the correspondence between the source body parts and the target body parts, that is, the body part correspondence.
[0180] 203. The terminal redirects the rotation data of the source biological skeleton model to the target biological skeleton model according to the correspondence of body parts, and obtains the adjusted animation model.
[0181] Among them, rotation data refers to the amount of bone rotation.
[0182] Specifically, based on the correspondence between body parts, the bone rotation of the bones in the source organism's skeletal model is reused on the bones in the target organism's skeletal model that correspond to the bones in the source organism's skeletal model.
[0183] First, the skeletal correspondence between the source and target skeletal models can be determined based on the correspondence between the body parts of the source and target skeletal models. Then, based on the skeletal correspondence, the skeletal rotation amounts can be reused.
[0184] In some embodiments, different myriapods may have different numbers of bones in the same body part. This application proposes two methods for allocating bone rotation to solve the problem of redirection of different bone numbers: nearest neighbor allocation method and proportional allocation method.
[0185] The nearest neighbor allocation method superimposes the rotation of unmatched bones in the source organism's skeletal model onto its nearest matched bone. Unmatched bones in the target organism's skeletal model are then proportionally allocated to their nearest matching bones. This method is suitable for leg bones. The proportional allocation method calculates the ratio of bone segments between the source and target organisms' skeletal models and allocates the rotation of source bones to target bones proportionally and hierarchically. This method is suitable for retargeting bones in areas such as the tail and spine. Furthermore, if the source and target organisms' skeletal models have the same number of bone segments, no bone rotation allocation is required. For a detailed explanation of the nearest neighbor and proportional allocation methods, please refer to the above embodiments; further details will not be provided here.
[0186] 204. The terminal processes the adjusted animation model based on the position of the end nodes of the source and target biological skeleton models to obtain the target animation model corresponding to the target biological skeleton model.
[0187] In some embodiments, directly reusing the rotation data of the source organism's skeletal model to the target organism's skeletal model often results in issues such as sliding and grounding in the target organism's skeletal model. Therefore, to maintain the grounding and grounding effects of the target organism's skeletal model, the positional changes of the end nodes of the source organism's skeletal model can be transferred to the target organism's skeletal model. Considering the differences in body size among different organisms, a scaling factor can be calculated based on the body dimensions of the source and target organisms' skeletal models and applied to the end nodes of the source organism's skeletal model to obtain the initial end node positions of the target organism's skeletal model. The formula for calculating the scaling factor can be found in the above embodiments.
[0188] Furthermore, the initial target end node position E1 can be calculated based on the position of the end node of the source biological skeleton model and the scaling factor.
[0189] In this embodiment, considering the differences in the relative positions of terminal nodes of different organisms, the deviations of the terminal nodes of the source and target organism skeletal models under Tpose can be recorded, and the transformation relationship of the corresponding terminal nodes can be calculated. This transformation relationship is then applied to the initial target model terminal node position E1 to obtain the final target terminal node position E2. Specifically, the calculation method for E2 can be found in the above embodiments, and will not be repeated here.
[0190] After obtaining the target end node position, the new bone rotation amount is iteratively calculated based on the above data rotation reuse results using inverse kinematics (IK) technology, so that the end node of the target model reaches the target end node position calculated above.
[0191] Specifically, to balance the relationship between action similarity and arrival position, this invention sets an adjustable weighting coefficient (IK / FK fusion coefficient) α, which is used to fuse the results of direct migration rotation data and the results of IK inverse calculation. The calculation formula for the fused end node position can be found in the above embodiments.
[0192] In addition, when reusing rotational data, to avoid the reverse of the skeleton of the target object's skeletal model, the direction of bone twisting can be constrained to be consistent with the Tpose definition.
[0193] 205. The terminal generates the target animation of the target biological skeleton model based on the target animation model obtained from each source biological skeleton model, and saves the target animation as a file in the specified format.
[0194] After the above retargeting calculation, the animation of the target skeleton will be generated. In the process of generating the target animation of the target biological skeleton model based on the target animation model obtained from each source biological skeleton model, in order to maintain the continuity of the target biological skeleton model's movements, inter-frame smoothing constraints can be added between multiple target animation models.
[0195] Finally, the results can be stored as an FBX file. By obtaining the position information of the bones in world space for each frame in the FBX, this position information can be passed to the controller so that the animator can make secondary modifications to the generated result. Specifically, after the generated controller animation file is handed over to the animator, the animator can add animation layers on it or directly adjust the animation curves of the corresponding controller for secondary animation repair to improve the animation performance of the target creature's skeletal model.
[0196] This application discloses an animation retargeting method, which includes: acquiring a source biological skeleton model and a target biological skeleton model at a terminal; matching the source biological skeleton model and the target biological skeleton model based on a general skeleton matching template to obtain the correspondence between body parts of the source biological skeleton model and the target biological skeleton model; retargeting the rotation data of the source biological skeleton model to the target biological skeleton model according to the body part correspondence to obtain an adjusted animation model; processing the adjusted animation model according to the position of the end nodes of the source biological skeleton model and the target biological skeleton model to obtain a target animation model corresponding to the target biological skeleton model; generating a target animation of the target biological skeleton model based on the target animation model obtained for each source biological skeleton model; and storing the target animation as a specified format file. This improves the applicability and performance of animation retargeting.
[0197] To facilitate better implementation of the animation redirection method provided in this application, this application also provides an animation redirection device based on the above-described animation redirection method. The meanings of the terms used are the same as in the above-described animation redirection method, and specific implementation details can be found in the descriptions within the method embodiments.
[0198] Please see Figure 5 , Figure 5 A structural block diagram of an animation redirection device provided in this application embodiment, the device comprising:
[0199] The first acquisition unit 301 is used to acquire the source object skeleton model and the target object skeleton model;
[0200] The second acquisition unit 302 is used to acquire a general skeleton matching template, which includes multiple body parts obtained by dividing the biological body, and each body part includes at least one skeleton.
[0201] The determining unit 303 is used to determine the correspondence between the body parts of the source object skeleton model and the target object skeleton model based on the matching results of the body parts of the source object skeleton model and the target object skeleton model with the general skeleton matching template, respectively.
[0202] The first processing unit 304 is used to redirect the animation information of the source object skeleton model to the target object skeleton model according to the correspondence of the body parts, so as to obtain the target animation model of the target object skeleton model.
[0203] In some embodiments, the first processing unit 304 may include:
[0204] The first determining subunit is used to determine the target bone in the target object body part corresponding to the source bone in the source object body part, based on the target object body part corresponding to the source object body part.
[0205] The adjustment subunit is used to rotate and adjust the target bone based on the bone rotation amount of the source bone corresponding to the target bone, so as to obtain the adjusted animation model;
[0206] The first comparison subunit is used to compare the shape of the first bone in the source object skeleton model located at the specified body part with the second bone in the target object skeleton model located at the specified body part, and obtain the comparison result.
[0207] The second determining subunit is used to determine the target animation model based on the adjusted animation model and the comparison result.
[0208] In some embodiments, the second determining subunit may specifically be used for:
[0209] If the comparison result indicates that the first bone and the second bone have the same shape, then the target animation model is obtained based on the adjusted animation model;
[0210] If the comparison result indicates that the first bone and the second bone have different shapes, then the adjusted animation model is adjusted again according to the position information of the first bone to obtain the target animation model.
[0211] In some embodiments, the second determining subunit may specifically be used for:
[0212] If the comparison result indicates that the first bone and the second bone have the same shape, then the target animation model is obtained based on the adjusted animation model;
[0213] If the comparison result indicates that the first bone and the second bone have different shapes, then the target position of the second bone is determined based on the position information; the bone rotation difference is determined according to the target position and the initial position of the second bone in the adjusted animation model; the bones in the adjusted animation model are rotated and adjusted based on the bone rotation difference to obtain the target animation model.
[0214] In some embodiments, the second determining subunit may specifically be used for:
[0215] If the comparison result indicates that the first bone and the second bone have the same shape, then the target animation model is obtained based on the adjusted animation model;
[0216] If the comparison result indicates that the first bone and the second bone have different shapes, then obtain the first offset and first height of the first bone in the specified plane, and the second offset and second height of the second bone in the specified plane; calculate the target position based on the position information, the first offset, the first height, the second offset, and the second height; determine the bone rotation difference based on the target position and the initial position of the second bone in the adjusted animation model; rotate and adjust the bones in the adjusted animation model based on the bone rotation difference to obtain the target animation model.
[0217] In some embodiments, the first processing unit 304 may further include:
[0218] The second comparison subunit is used to compare the number of source bones in the body part of the source object with the number of target bones in the body part of the target object.
[0219] The third determining subunit is used to determine the extra bones from the source object body part or the target object body part if the number of source bones is not equal to the number of target bones.
[0220] In some embodiments, the adjustment subunit can be specifically used for:
[0221] If the redundant bone belongs to the body part of the source object, then the bone rotation of the bone corresponding to the adjacent bone in the body part of the target object is adjusted according to the bone rotation of the redundant bone and the adjacent bone of the redundant bone, and the bone rotation of the bone corresponding to the other bones in the body part of the target object is adjusted according to the bone rotation of the remaining bones in the body part of the source object excluding the redundant bone.
[0222] If the extra bone belongs to the body part of the target object, then the bone rotation amount of the extra bone is adjusted according to the bone rotation amount of the bone corresponding to the adjacent bone in the body part of the source object, and the bone rotation amount of the bone corresponding to each bone in the body part of the target object is adjusted according to the bone rotation amount of each bone in the body part of the source object.
[0223] In some embodiments, the adjustment subunit may also be specifically used for:
[0224] Calculate the ratio of the number of source bones in the body parts of the source object to the number of target bones in the body parts of the target object;
[0225] Based on the stated quantity ratio and the bone rotation of each source bone in the body part of the source object, adjust the bone rotation of each target bone in the body part of the target object.
[0226] In some embodiments, the determining unit 303 may include:
[0227] The first matching subunit is used to match the source object skeleton model with the body parts of the general skeleton matching template, and to determine the source object body parts that are successfully matched with the source object skeleton model from the body parts of the general skeleton matching template.
[0228] The second matching subunit is used to match the target object skeleton model with the body parts of the general skeleton matching template, and to determine the target object body parts that are successfully matched with the target object skeleton model from the body parts of the general skeleton matching template.
[0229] The fourth determining subunit is used to obtain the correspondence between the body parts of the source object skeleton model and the target object skeleton model based on the source object body parts and the target object body parts corresponding to the same body part of the general skeleton matching template.
[0230] In some embodiments, the first acquisition unit 301 may include:
[0231] The first acquisition subunit is used to sequentially acquire the source object skeleton model in each animation frame according to the playback order of the animation frames of the source object animation, and to acquire the target object skeleton model from the target object's initial frame.
[0232] In some embodiments, the first processing unit 304 may include:
[0233] The processing subunit is used to redirect the animation information of each source object skeleton model to the target object skeleton model according to the correspondence between the body parts of each source object skeleton model and the target object skeleton model, so as to obtain multiple target animation models of the target object skeleton model.
[0234] In some embodiments, the device may further include:
[0235] The second processing unit is used to perform smooth constraint processing on two adjacent target animation models according to the arrangement order of the multiple target animation models, so as to obtain multiple target animation models after processing.
[0236] The generation unit is used to generate the target animation of the target object skeleton model based on the processed multiple target animation models.
[0237] This application discloses an animation redirection device. A first acquisition unit 301 acquires a source object skeletal model and a target object skeletal model. A second acquisition unit 302 acquires a universal skeletal matching template, which includes multiple body parts obtained by dividing the biological body, each body part including at least one bone. A determining unit 303 determines the correspondence between the body parts of the source object skeletal model and the target object skeletal model based on the matching results between the source object skeletal model and the target object skeletal model and the body parts of the universal skeletal matching template. A first processing unit 304 redirects the animation information of the source object skeletal model to the target object skeletal model according to the body part correspondence, obtaining the target animation model of the target object skeletal model. This improves the applicability of animation redirection.
[0238] Accordingly, embodiments of this application also provide a computer device, which can be a terminal. For example... Figure 6 As shown, Figure 6This is a schematic diagram of the structure of a computer device provided in an embodiment of this application. The computer device 500 includes a processor 501 with one or more processing cores, a memory 502 with one or more computer-readable storage media, and a computer program stored on the memory 502 and executable on the processor. The processor 501 and the memory 502 are electrically connected. Those skilled in the art will understand that the computer device structure shown in the figure does not constitute a limitation on the computer device, and may include more or fewer components than shown, or combine certain components, or have different component arrangements.
[0239] The processor 501 is the control center of the computer device 500. It connects various parts of the computer device 500 through various interfaces and lines. By running or loading software programs and / or modules stored in the memory 502, and calling data stored in the memory 502, it performs various functions of the computer device 500 and processes data, thereby monitoring the computer device 500 as a whole.
[0240] In this embodiment, the processor 501 in the computer device 500 loads the instructions corresponding to the processes of one or more applications into the memory 502 according to the following steps, and the processor 501 runs the applications stored in the memory 502 to achieve various functions:
[0241] Obtain the skeletal models of the source object and the target object;
[0242] Obtain a general skeleton matching template, which includes multiple body parts obtained by dividing the organism's body, and each body part includes at least one skeleton;
[0243] Based on the matching results of the source object skeleton model and the target object skeleton model with the body parts of the general skeleton matching template, the correspondence between the body parts of the source object skeleton model and the target object skeleton model is determined.
[0244] Based on the correspondence of body parts, the animation information of the source object's skeletal model is redirected to the target object's skeletal model to obtain the target animation model of the target object's skeletal model.
[0245] In some embodiments, the body part correspondence includes the target object body part in the target object skeleton model corresponding to the body part of the source object in the source object skeleton model, and the animation information includes at least the bone rotation amount of each source bone in the source object skeleton model.
[0246] Based on the correspondence between body parts, the animation information of the source object's skeletal model is redirected to the target object's skeletal model, resulting in the target animation model of the target object's skeletal model, including:
[0247] Based on the target object body part corresponding to the source object body part, determine the target bone in the target object body part corresponding to the source bone in the source object body part;
[0248] The target bone is rotated and adjusted based on the bone rotation of the source bone corresponding to the target bone to obtain the adjusted animation model;
[0249] The first bone in the source object's skeletal model located at a specified body part is compared with the second bone in the target object's skeletal model located at the specified body part to obtain the comparison result.
[0250] The target animation model is determined based on the adjusted animation model and the comparison results.
[0251] In some embodiments, determining the target animation model based on the adjusted animation model and comparison results includes:
[0252] If the comparison result indicates that the first bone and the second bone have the same shape, then the target animation model is obtained based on the adjusted animation model;
[0253] If the comparison result indicates that the shapes of the first and second bones are different, the adjusted animation model is then adjusted again based on the position information of the first bone to obtain the target animation model.
[0254] In some embodiments, the adjusted animation model is further adjusted based on the position information of the first bone to obtain the target animation model, including:
[0255] Determine the target location of the second skeleton based on location information;
[0256] Determine the bone rotation difference based on the target position and the initial position of the second bone in the adjusted animation model;
[0257] The target animation model is obtained by rotating and adjusting the bones in the adjusted animation model based on the bone rotation difference.
[0258] In some embodiments, determining the target location of the second skeleton based on location information includes:
[0259] Obtain the first offset and first height of the first bone in the specified plane, and the second offset and second height of the second bone in the specified plane;
[0260] The target position is calculated based on the location information, the first offset, the first altitude, the second offset, and the second altitude.
[0261] In some embodiments, before rotating and adjusting the target bone based on the bone rotation of the source bone corresponding to the target bone to obtain the adjusted animation model, the method further includes:
[0262] Compare the number of source bones in the body parts of the source object with the number of target bones in the body parts of the target object;
[0263] If the number of source bones is not equal to the number of target bones, then the extra bones are determined from either the source object's body parts or the target object's body parts.
[0264] The target bone is rotated and adjusted based on the bone rotation of the source bone corresponding to the target bone to obtain the adjusted animation model, including:
[0265] If the extra bone belongs to the body part of the source object, then adjust the bone rotation of the bones corresponding to the adjacent bones in the body part of the target object according to the bone rotation of the extra bone and the bones adjacent to the extra bone, and adjust the bone rotation of the bones corresponding to the other bones in the body part of the target object according to the bone rotation of the other bones in the body part of the source object excluding the extra bone.
[0266] If the extra bone belongs to the body part of the target object, then adjust the bone rotation of the extra bone according to the bone rotation of the bone corresponding to the bone in the body part of the source object. Also, adjust the bone rotation of the bones corresponding to each bone in the body part of the target object according to the bone rotation of each bone in the body part of the source object.
[0267] In some embodiments, it also includes:
[0268] Calculate the ratio of the number of source bones in the body parts of the source object to the number of target bones in the body parts of the target object;
[0269] Based on the quantity ratio and the bone rotation of each source bone in the body part of the source object, adjust the bone rotation of each target bone in the body part of the target object.
[0270] In some embodiments, the correspondence between the body parts of the source object skeleton model and the target object skeleton model is determined based on the matching results of the body parts of the source object skeleton model and the target object skeleton model with the general skeleton matching template, including:
[0271] Match the source object's skeletal model with the body parts of the general skeletal matching template, and identify the source object's body parts that successfully match the source object's skeletal model from the body parts of the general skeletal matching template.
[0272] Match the target object's skeletal model with the body parts of a general skeletal matching template, and identify the target object's body parts that successfully match the target object's skeletal model from the body parts of the general skeletal matching template.
[0273] Based on the source object's body parts and the target object's body parts corresponding to the same body part in the general skeleton matching template, the correspondence between the body parts of the source object's skeleton model and the target object's skeleton model is obtained.
[0274] In some embodiments, obtaining the skeletal model of the source object and the skeletal model of the target object includes:
[0275] The source object's skeletal model is obtained sequentially from each animation frame according to the playback order of the source object's animation frames, and the target object's skeletal model is obtained from the target object's initial frame.
[0276] In some embodiments, the animation information of the source object's skeletal model is redirected to the target object's skeletal model according to the correspondence of body parts, to obtain the target animation model of the target object's skeletal model, including:
[0277] Based on the correspondence between the body parts of each source object skeleton model and the target object skeleton model, the animation information of each source object skeleton model is redirected to the target object skeleton model, resulting in multiple target animation models of the target object skeleton model.
[0278] In some embodiments, it also includes:
[0279] Based on the arrangement order of multiple target animation models, smoothing constraint processing is applied to two adjacent target animation models to obtain multiple processed target animation models.
[0280] The target animation is generated based on the skeletal model of the target object after processing multiple target animation models.
[0281] This solution divides the biological model into several body parts to obtain a universal skeleton matching template. The source biological skeleton model and the target biological skeleton model are matched based on the universal skeleton matching template to obtain the correspondence between body parts. Then, the animation data of the source biological skeleton model is redirected to the target biological skeleton model according to the correspondence between body parts. This solution is applicable to the redirection of animation data of various types of organisms, thereby improving the applicability of animation redirection.
[0282] For details on the implementation of each of the above operations, please refer to the previous examples, which will not be repeated here.
[0283] Optional, such as Figure 6 As shown, the computer device 500 also includes: a touch screen display 503, a radio frequency circuit 504, an audio circuit 505, an input unit 506, and a power supply 507. The processor 501 is electrically connected to the touch screen display 503, the radio frequency circuit 504, the audio circuit 505, the input unit 506, and the power supply 507. Those skilled in the art will understand that... Figure 6The computer device structure shown does not constitute a limitation on the computer device and may include more or fewer components than shown, or combine certain components, or have different component arrangements.
[0284] The touch display screen 503 can be used to display a graphical user interface (GUI) and receive operation commands generated by the user interacting with the GUI. The touch display screen 503 may include a display panel and a touch panel. The display panel can be used to display information input by the user or information provided to the user, as well as various graphical user interfaces of the computer device. These graphical user interfaces can be composed of graphics, guidance information, icons, videos, and any combination thereof. Optionally, the display panel can be configured using a liquid crystal display (LCD), organic light-emitting diode (OLED), or other similar technologies. The touch panel can be used to collect touch operations performed by the user on or near it (such as operations performed by the user using a finger, stylus, or any suitable object or accessory on or near the touch panel), generate corresponding operation commands, and execute the corresponding program according to the operation commands. Optionally, the touch panel may include two parts: a touch detection device and a touch controller. The touch detection device detects the user's touch location and the signal generated by the touch operation, transmitting the signal to the touch controller. The touch controller receives touch information from the touch detection device, converts it into touch point coordinates, and sends it to the processor 501. It can also receive and execute commands from the processor 501. The touch panel can cover the display panel. When the touch panel detects a touch operation on or near it, it transmits the information to the processor 501 to determine the type of touch event. Subsequently, the processor 501 provides corresponding visual output on the display panel based on the type of touch event. In this embodiment, the touch panel and display panel can be integrated into the touch display screen 503 to achieve input and output functions. However, in some embodiments, the touch panel and display panel can be implemented as two independent components to achieve input and output functions. That is, the touch display screen 503 can also be used as part of the input unit 506 to achieve input functions.
[0285] The radio frequency circuit 504 can be used to transmit and receive radio frequency signals to establish wireless communication with network devices or other computer devices, and to transmit and receive signals with network devices or other computer devices.
[0286] Audio circuitry 505 can be used to provide an audio interface between a user and a computer device via a speaker and a microphone. Audio circuitry 505 converts received audio data into electrical signals, transmits them to the speaker, and the speaker converts them into sound signals for output. Conversely, the microphone converts collected sound signals into electrical signals, which are then received by audio circuitry 505, converted back into audio data, and output to processor 501 for processing. The audio data is then transmitted via radio frequency circuitry 504 to, for example, another computer device, or output to memory 502 for further processing. Audio circuitry 505 may also include an earphone jack to facilitate communication between peripheral headphones and the computer device.
[0287] The input unit 506 can be used to receive input numbers, characters, or user characteristic information (such as fingerprints, iris, facial information, etc.), and to generate keyboard, mouse, joystick, optical, or trackball signal inputs related to user settings and function control.
[0288] Power supply 507 is used to supply power to various components of computer device 500. Optionally, power supply 507 can be logically connected to processor 501 through a power management system, thereby enabling functions such as charging, discharging, and power consumption management through the power management system. Power supply 507 may also include one or more DC or AC power supplies, recharging systems, power fault detection circuits, power converters or inverters, power status indicators, and other arbitrary components.
[0289] although Figure 6 As not shown in the diagram, the computer device 500 may also include a camera, sensor, wireless fidelity module, Bluetooth module, etc., which will not be described in detail here.
[0290] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions in other embodiments.
[0291] As can be seen from the above, the computer device provided in this embodiment acquires a source object skeleton model and a target object skeleton model; acquires a general skeleton matching template, which includes multiple body parts obtained by dividing the biological body, and each body part includes at least one bone; determines the correspondence between the body parts of the source object skeleton model and the target object skeleton model and the general skeleton matching template based on the matching results of the body parts of the source object skeleton model and the target object skeleton model respectively; and redirects the animation information of the source object skeleton model to the target object skeleton model according to the correspondence between the body parts, thereby obtaining the target animation model of the target object skeleton model.
[0292] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be performed by instructions, or by instructions controlling related hardware. These instructions can be stored in a computer-readable storage medium and loaded and executed by a processor.
[0293] Therefore, embodiments of this application provide a computer-readable storage medium storing a plurality of computer programs that can be loaded by a processor to execute the steps in any of the animation retargeting methods provided in embodiments of this application. For example, the computer program can execute the following steps:
[0294] Obtain the skeletal models of the source object and the target object;
[0295] Obtain a general skeleton matching template, which includes multiple body parts obtained by dividing the organism's body, and each body part includes at least one skeleton;
[0296] Based on the matching results of the source object skeleton model and the target object skeleton model with the body parts of the general skeleton matching template, the correspondence between the body parts of the source object skeleton model and the target object skeleton model is determined.
[0297] Based on the correspondence of body parts, the animation information of the source object's skeletal model is redirected to the target object's skeletal model to obtain the target animation model of the target object's skeletal model.
[0298] In some embodiments, the body part correspondence includes the target object body part in the target object skeleton model corresponding to the body part of the source object in the source object skeleton model, and the animation information includes at least the bone rotation amount of each source bone in the source object skeleton model.
[0299] Based on the correspondence between body parts, the animation information of the source object's skeletal model is redirected to the target object's skeletal model, resulting in the target animation model of the target object's skeletal model, including:
[0300] Based on the target object body part corresponding to the source object body part, determine the target bone in the target object body part corresponding to the source bone in the source object body part;
[0301] The target bone is rotated and adjusted based on the bone rotation of the source bone corresponding to the target bone to obtain the adjusted animation model;
[0302] The first bone in the source object's skeletal model located at a specified body part is compared with the second bone in the target object's skeletal model located at the specified body part to obtain the comparison result.
[0303] The target animation model is determined based on the adjusted animation model and the comparison results.
[0304] In some embodiments, determining the target animation model based on the adjusted animation model and comparison results includes:
[0305] If the comparison result indicates that the first bone and the second bone have the same shape, then the target animation model is obtained based on the adjusted animation model;
[0306] If the comparison result indicates that the shapes of the first and second bones are different, the adjusted animation model is then adjusted again based on the position information of the first bone to obtain the target animation model.
[0307] In some embodiments, the adjusted animation model is further adjusted based on the position information of the first bone to obtain the target animation model, including:
[0308] Determine the target location of the second skeleton based on location information;
[0309] Determine the bone rotation difference based on the target position and the initial position of the second bone in the adjusted animation model;
[0310] The target animation model is obtained by rotating and adjusting the bones in the adjusted animation model based on the bone rotation difference.
[0311] In some embodiments, determining the target location of the second skeleton based on location information includes:
[0312] Obtain the first offset and first height of the first bone in the specified plane, and the second offset and second height of the second bone in the specified plane;
[0313] The target position is calculated based on the location information, the first offset, the first altitude, the second offset, and the second altitude.
[0314] In some embodiments, before rotating and adjusting the target bone based on the bone rotation of the source bone corresponding to the target bone to obtain the adjusted animation model, the method further includes:
[0315] Compare the number of source bones in the body parts of the source object with the number of target bones in the body parts of the target object;
[0316] If the number of source bones is not equal to the number of target bones, then the extra bones are determined from either the source object's body parts or the target object's body parts.
[0317] The target bone is rotated and adjusted based on the bone rotation of the source bone corresponding to the target bone to obtain the adjusted animation model, including:
[0318] If the extra bone belongs to the body part of the source object, then adjust the bone rotation of the bones corresponding to the adjacent bones in the body part of the target object according to the bone rotation of the extra bone and the bones adjacent to the extra bone, and adjust the bone rotation of the bones corresponding to the other bones in the body part of the target object according to the bone rotation of the other bones in the body part of the source object excluding the extra bone.
[0319] If the extra bone belongs to the body part of the target object, then adjust the bone rotation of the extra bone according to the bone rotation of the bone corresponding to the bone in the body part of the source object. Also, adjust the bone rotation of the bones corresponding to each bone in the body part of the target object according to the bone rotation of each bone in the body part of the source object.
[0320] In some embodiments, it also includes:
[0321] Calculate the ratio of the number of source bones in the body parts of the source object to the number of target bones in the body parts of the target object;
[0322] Based on the quantity ratio and the bone rotation of each source bone in the body part of the source object, adjust the bone rotation of each target bone in the body part of the target object.
[0323] In some embodiments, the correspondence between the body parts of the source object skeleton model and the target object skeleton model is determined based on the matching results of the body parts of the source object skeleton model and the target object skeleton model with the general skeleton matching template, including:
[0324] Match the source object's skeletal model with the body parts of the general skeletal matching template, and identify the source object's body parts that successfully match the source object's skeletal model from the body parts of the general skeletal matching template.
[0325] Match the target object's skeletal model with the body parts of a general skeletal matching template, and identify the target object's body parts that successfully match the target object's skeletal model from the body parts of the general skeletal matching template.
[0326] Based on the source object's body parts and the target object's body parts corresponding to the same body part in the general skeleton matching template, the correspondence between the body parts of the source object's skeleton model and the target object's skeleton model is obtained.
[0327] In some embodiments, obtaining the skeletal model of the source object and the skeletal model of the target object includes:
[0328] The source object's skeletal model is obtained sequentially from each animation frame according to the playback order of the source object's animation frames, and the target object's skeletal model is obtained from the target object's initial frame.
[0329] In some embodiments, the animation information of the source object's skeletal model is redirected to the target object's skeletal model according to the correspondence of body parts, to obtain the target animation model of the target object's skeletal model, including:
[0330] Based on the correspondence between the body parts of each source object skeleton model and the target object skeleton model, the animation information of each source object skeleton model is redirected to the target object skeleton model, resulting in multiple target animation models of the target object skeleton model.
[0331] In some embodiments, it also includes:
[0332] Based on the arrangement order of multiple target animation models, smoothing constraint processing is applied to two adjacent target animation models to obtain multiple processed target animation models.
[0333] The target animation is generated based on the skeletal model of the target object after processing multiple target animation models.
[0334] This solution divides the biological model into several body parts to obtain a universal skeleton matching template. The source biological skeleton model and the target biological skeleton model are matched based on the universal skeleton matching template to obtain the correspondence between body parts. Then, the animation data of the source biological skeleton model is redirected to the target biological skeleton model according to the correspondence between body parts. This solution is applicable to the redirection of animation data of various types of organisms, thereby improving the applicability of animation redirection.
[0335] For details on the implementation of each of the above operations, please refer to the previous examples, which will not be repeated here.
[0336] The computer-readable storage medium may include: read-only memory (ROM), random access memory (RAM), disk or optical disk, etc.
[0337] Since the computer program stored in the computer-readable storage medium can execute the steps in any of the animation redirection methods provided in the embodiments of this application, the beneficial effects that any of the animation redirection methods provided in the embodiments of this application can achieve can be realized. For details, please refer to the previous embodiments, which will not be repeated here.
[0338] The above provides a detailed description of an animation redirection method, apparatus, storage medium, and computer device provided in the embodiments of this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.
Claims
1. An animation redirection method, characterized in that, The method includes: Obtain the skeletal models of the source object and the target object; Obtain a general skeleton matching template, which includes multiple body parts obtained by dividing the biological body, and each body part includes at least one skeleton; Based on the matching results of the source object skeleton model and the target object skeleton model with the body parts of the general skeleton matching template, the correspondence between the body parts of the source object skeleton model and the target object skeleton model is determined. Based on the correspondence of the body parts, the animation information of the source object skeleton model is redirected to the target object skeleton model to obtain the target animation model of the target object skeleton model; The body part correspondence includes the target object body part in the target object skeleton model corresponding to the body part of the source object in the source object skeleton model, and the animation information includes at least the bone rotation amount of each source bone in the source object skeleton model. The step of redirecting the animation information of the source object skeletal model to the target object skeletal model according to the correspondence of the body parts, to obtain the target animation model of the target object skeletal model, includes: Based on the target object body part corresponding to the source object body part, determine the target bone in the target object body part corresponding to the source bone in the source object body part; The target bone is rotated and adjusted based on the bone rotation amount of the source bone corresponding to the target bone to obtain the adjusted animation model; The first bone in the source object's skeletal model located at a specified body part is compared with the second bone in the target object's skeletal model located at the specified body part to obtain the comparison result. The target animation model is determined based on the adjusted animation model and the comparison results. The method further includes: Calculate the ratio of the number of source bones in the body parts of the source object to the number of target bones in the body parts of the target object; Based on the stated quantity ratio and the bone rotation of each source bone in the body part of the source object, adjust the bone rotation of each target bone in the body part of the target object.
2. The method according to claim 1, characterized in that, Determining the target animation model based on the adjusted animation model and the comparison result includes: If the comparison result indicates that the first bone and the second bone have the same shape, then the target animation model is obtained based on the adjusted animation model; If the comparison result indicates that the first bone and the second bone have different shapes, then the adjusted animation model is adjusted again according to the position information of the first bone to obtain the target animation model.
3. The method according to claim 2, characterized in that, The step of readjusting the adjusted animation model based on the position information of the first bone to obtain the target animation model includes: The target location of the second bone is determined based on the location information; The bone rotation difference is determined based on the target position and the initial position of the second bone in the adjusted animation model; The bones in the adjusted animation model are rotated and adjusted based on the bone rotation difference to obtain the target animation model.
4. The method according to claim 3, characterized in that, Determining the target location of the second bone based on the location information includes: Obtain the first offset and first height of the first bone in the specified plane, and the second offset and second height of the second bone in the specified plane; The target position is calculated based on the location information, the first offset, the first height, the second offset, and the second height.
5. The method according to claim 1, characterized in that, Before rotating and adjusting the target bone based on the bone rotation of the source bone corresponding to the target bone to obtain the adjusted animation model, the method further includes: Compare the number of source bones in the body parts of the source object with the number of target bones in the body parts of the target object; If the number of source bones is not equal to the number of target bones, then extra bones are determined from either the source object's body part or the target object's body part. The step of rotating and adjusting the target bone based on the bone rotation of the source bone corresponding to the target bone to obtain the adjusted animation model includes: If the redundant bone belongs to the body part of the source object, then the bone rotation of the bone corresponding to the adjacent bone in the body part of the target object is adjusted according to the bone rotation of the redundant bone and the adjacent bone of the redundant bone, and the bone rotation of the bone corresponding to the other bones in the body part of the target object is adjusted according to the bone rotation of the remaining bones in the body part of the source object excluding the redundant bone. If the extra bone belongs to the body part of the target object, then the bone rotation amount of the extra bone is adjusted according to the bone rotation amount of the bone corresponding to the adjacent bone in the body part of the source object, and the bone rotation amount of the bone corresponding to each bone in the body part of the target object is adjusted according to the bone rotation amount of each bone in the body part of the source object.
6. The method according to claim 1, characterized in that, The step of determining the correspondence between the body parts of the source object skeleton model and the target object skeleton model based on the matching results of the body parts of the source object skeleton model and the target object skeleton model with the general skeleton matching template includes: The source object skeleton model is matched with the body parts of the general skeleton matching template, and the source object body parts that successfully match the source object skeleton model are determined from the body parts of the general skeleton matching template. The target object skeleton model is matched with the body parts of the general skeleton matching template, and the target object body parts that successfully match the target object skeleton model are determined from the body parts of the general skeleton matching template. Based on the source object body parts and target object body parts corresponding to the same body part of the general skeleton matching template, the correspondence between the body parts of the source object skeleton model and the target object skeleton model is obtained.
7. The method according to claim 1, characterized in that, The process of obtaining the source object skeleton model and the target object skeleton model includes: The source object skeleton model is obtained sequentially from each animation frame according to the playback order of the animation frames of the source object animation, and the target object skeleton model is obtained from the initial frame of the target object.
8. The method according to claim 7, characterized in that, The step of redirecting the animation information of the source object skeletal model to the target object skeletal model according to the correspondence of the body parts, to obtain the target animation model of the target object skeletal model, includes: Based on the correspondence between the body parts of each source object skeleton model and the target object skeleton model, the animation information of each source object skeleton model is redirected to the target object skeleton model, resulting in multiple target animation models of the target object skeleton model.
9. The method according to claim 8, characterized in that, Also includes: Based on the arrangement order of the multiple target animation models, smoothing constraint processing is performed on two adjacent target animation models to obtain multiple processed target animation models. Based on the processed multiple target animation models, a target animation of the target object's skeletal model is generated.
10. An animation redirection device, characterized in that, The device includes: The first acquisition unit is used to acquire the skeletal model of the source object and the skeletal model of the target object; The second acquisition unit is used to acquire a general skeleton matching template, which includes multiple body parts obtained by dividing the biological body, and each body part includes at least one skeleton. The determining unit is used to determine the correspondence between the body parts of the source object skeleton model and the target object skeleton model based on the matching results of the body parts of the source object skeleton model and the target object skeleton model with the general skeleton matching template, respectively. The first processing unit is used to redirect the animation information of the source object skeleton model to the target object skeleton model according to the correspondence of the body parts, so as to obtain the target animation model of the target object skeleton model; The body part correspondence includes the target object body part in the target object skeleton model corresponding to the body part of the source object in the source object skeleton model, and the animation information includes at least the bone rotation amount of each source bone in the source object skeleton model. The first processing unit is further configured to: Based on the target object body part corresponding to the source object body part, determine the target bone in the target object body part corresponding to the source bone in the source object body part; The target bone is rotated and adjusted based on the bone rotation amount of the source bone corresponding to the target bone to obtain the adjusted animation model; The first bone in the source object's skeletal model located at a specified body part is compared with the second bone in the target object's skeletal model located at the specified body part to obtain the comparison result. The target animation model is determined based on the adjusted animation model and the comparison results. The first processing unit is further configured to: Calculate the ratio of the number of source bones in the body parts of the source object to the number of target bones in the body parts of the target object; Based on the stated quantity ratio and the bone rotation of each source bone in the body part of the source object, adjust the bone rotation of each target bone in the body part of the target object.
11. A computer device comprising a memory, a processor, and a computer program stored in the memory and running on the processor, wherein, When the processor executes the program, it implements the animation redirection method as described in any one of claims 1 to 9.
12. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a plurality of instructions adapted for loading by a processor to execute the animation retargeting method according to any one of claims 1 to 9.
Citation Information
Patent Citations
Movement redirection processing method and device
CN103530897A
Skeletal animation processing method and device, electronic equipment and storage medium
CN113368501A