Apparatus and method for artificial intelligence based 3D character rigging reflecting user characteristics and joint constraints
Patent Information
- Application Number
- KR1020260099382
- Authority / Receiving Office
- KR · KR
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2026-06-01
- Publication Date
- 2026-09-22
- Estimated Expiration
- 2046-06-01
Smart Images

Figure 112026066452409-PAT00001_ABST
Abstract
Description
Technology Field
[0001] The present invention relates to an artificial intelligence-based 3D character rigging device and method that reflects user characteristics and joint constraints. Background Technology
[0003] Unless otherwise indicated in this specification, the contents described in this section are not prior art for the claims of this application, and are not to be recognized as prior art simply because they are included in this section.
[0004] Recently, as various digital content industries such as the metaverse, games, and virtual reality have expanded, the importance of rigging and motion retargeting technologies that provide natural movement to three-dimensional (3D) characters is emerging.
[0005] Motion retargeting is the process of implementing movement by applying motion data acquired from external motion capture equipment or animation generators to a 3D character mesh with an embedded bone structure. In conventional rigging and retargeting environments, when applying such motion data to a character, the operator manually sets the maximum allowable range of motion (ROM) or inverse kinematics (IK) limits for joint bending, or applies fixed default values provided by rendering software in bulk.
[0006] However, these conventional technologies cause shape distortion errors when applying external motion data to characters that deviate from standard body types (e.g., morbidly obese, elderly, or atypical body types with extreme limb proportions). As fixed joint constraints are uniformly applied to models with varying shapes and volumes, physical clipping occurs where limbs dig into expanded abdominal areas, or specific joints twist abnormally beyond anatomical limits.
[0007] To resolve these motion application errors, it is conventionally necessary for animators to perform a motion clean-up process, in which they individually check animation frames, modify bone trajectories, and manually correct collision areas. This makes it difficult to immediately reuse 3D motion data in platform environments where multiple diverse avatars interact in real time, and is a major factor in significantly increasing the time and cost of the digital content production process.
[0008] Therefore, there is a need to develop an intelligent rigging device and method capable of using artificial intelligence to analyze the unique body volume and user characteristics of an input character, dynamically embedding appropriate joint constraints and three-dimensional collision areas into the structural data, and automatically converting to a geometrically natural alternative pose by detecting physical violations occurring during motion application in real time. Prior art literature
[0010] Korean Registered Patent No. 10-2738061 (2024.11.29.) The problem to be solved
[0011] One embodiment of the present invention provides an artificial intelligence-based 3D character rigging device and method that reflects user characteristics and joint constraints.
[0012] The technical problems to be solved by the present invention are not limited to those mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art to which the present invention belongs from the description below. means of solving the problem
[0014] To achieve the above-mentioned purpose, an electronic device according to one embodiment of the present invention includes a memory and a processor connected to the memory, wherein the processor receives three-dimensional character mesh data, a structure data corresponding to the three-dimensional character mesh data, and character body characteristic data, calculates joint constraint data based on the character body characteristic data using an artificial intelligence model, generates structure data with embedded constraints by embedding the joint constraint data in the form of parameters in individual joint nodes constituting the structure data, performs motion retargeting operations by applying external motion data to the structure data with embedded constraints, and derives final animation data by identifying a specific motion that violates the joint constraint data during the motion retargeting operations and calculating alternative pose data with a corrected trajectory to satisfy the joint constraint data.
[0015] At this time, the processor can derive the joint constraint data by extracting body ratio data and body shape obesity data included in the character body characteristic data, and by calculating the maximum allowable rotation angle (Range of Motion) and inverse kinematics limit range of each joint node in proportion to the body ratio data and body shape obesity data through regression operation of the artificial intelligence model.
[0016] At this time, the processor may calculate the volume area of a specific body part by calculating the surface curvature of the 3D character mesh data, calculate a three-dimensional collider metadata that completely encloses the calculated volume area, and generate the constraint embedded bone structure data by merging and embedding the three-dimensional collider metadata together with the joint constraint data in the joint node of the corresponding part.
[0017] At this time, the processor applies the external motion data to the constraint-embedded bone structure data on a frame-by-frame basis, and can identify the specific motion in real time by encompassing both the angle violation area where the motion trajectory of the applied unit frame exceeds the maximum allowable rotation angle and the physical penetration (clipping) area where the bone encroaches on the three-dimensional collision metadata.
[0018] At this time, the processor may calculate a plurality of preliminary pose coordinates that do not violate the maximum allowable rotation angle and the boundary surface conditions of the stereoscopic collider metadata for the frame in which the specific motion is identified, select the optimal coordinate among the plurality of preliminary pose coordinates that has the smallest numerical deviation from the original trajectory of the external motion data, and convert the specific motion into the alternative pose data to which mathematical smoothing is applied based on the selected optimal coordinate to derive the final animation data.
[0019] At this time, the processor calculates a motion velocity vector by calculating the amount of change in the trajectory between frames of the specific motion, and when the condition is satisfied that the motion velocity vector exceeds a preset velocity threshold, it performs mathematical smoothing by reducing the interpolation weight applied when performing spherical linear interpolation between the original trajectory of the specific motion and the optimal coordinates in proportion to the motion velocity vector, and when the condition is satisfied that the motion velocity vector is below the velocity threshold, it performs mathematical smoothing by fixing the interpolation weight to a specified default value to derive the alternative pose data.
[0020] At this time, the processor can calculate the 3D position displacement value of the lowest joint node connected to the first joint node through a hierarchical network when the rotation angle of the first joint node is transformed according to the selection operation of the optimal coordinates, identify the condition for foot sliding occurring when the 3D position displacement value exceeds a preset position threshold, and when the condition for foot sliding occurs is satisfied, perform an inverse kinematics compensation operation to forcibly fix the 3D coordinates of the lowest joint node to the original 3D coordinates of the specific motion by applying the inverse kinematics limit range, and derive the final animation data by merging the result of the inverse kinematics compensation operation with the alternative pose data.
[0021] At this time, the processor calculates a distance value between the 3D coordinates of a virtual camera performing rendering and the center coordinates of the 3D character mesh data, and if the condition is satisfied that the distance value exceeds a preset distance threshold, it performs a lightweight operation to reduce the number of vertices constituting the 3D collider metadata and reduces and applies the identification operation cycle of the specific motion, and if the condition is satisfied that the distance value is less than or equal to the distance threshold, it maintains the original state of the 3D collider metadata and synchronizes the identification operation cycle with the frame rate of the external motion data to control the allocation of computational resources.
[0022] At this time, the processor can identify a jittering occurrence section in which the rotation value of the joint node changes discontinuously and rapidly by comparing the motion trajectories between each frame for all frames of the final animation data, calculate the phase difference between the sampling frequency of the external motion data and the operation frequency of the constraint embedded structure data for the jittering occurrence section, generate a time-synchronization offset that finely adjusts the external motion data in the time axis direction based on the phase difference, and re-perform the interpolation of the rotation value of the joint node by applying the time-synchronization offset to the final animation data.
[0023] At this time, the processor calls a physics-based computational model for each joint node constituting the constraint-embedded main structure data, calculates the moment of inertia of each joint node based on the character body characteristic data including mass distribution information between the joint nodes, and if the amount of change of the moment of inertia exceeds a preset threshold during the process of converting to the alternative pose data, it may assign a velocity weight corresponding to the optimal coordinate inversely proportional to the moment of inertia value during the selection operation for deriving the optimal coordinate.
[0024] At this time, when the external motion data is input from multiple models with different formats, the processor can generate a mapping table by analyzing the semantic similarity between the joint names of each model and the individual joint nodes, convert the external motion data into intermediate representation data of a single standard through the mapping table, perform the motion retargeting operation, and for unregistered joint nodes that are not identified during the generation process of the intermediate representation data, perform a virtual joint generation operation that weighted averages the movements of adjacent joints by utilizing the hierarchical structure of the constraint-embedded bone structure data. Effects of the invention
[0026] As such, according to one embodiment of the present invention, an artificial intelligence-based 3D character rigging device and method reflecting user characteristics and joint constraints can be provided.
[0027] The effects obtainable from the present invention are not limited to those mentioned above, and other unmentioned effects will be clearly understood by those skilled in the art from the description below. Brief explanation of the drawing
[0029] Other aspects, features, and benefits of specific preferred embodiments of the present invention, as described above, will become more apparent from the following description in conjunction with the accompanying drawings. FIG. 1 is a conceptual diagram of an artificial intelligence-based 3D character rigging device reflecting user characteristics and joint constraints according to one embodiment of the present invention. FIG. 2 is a block diagram of an electronic device according to one embodiment of the present invention. FIG. 3 is a diagram showing the maximum allowable rotation angle of a joint node according to one embodiment of the present invention. FIG. 4 is a drawing showing a specific motion according to one embodiment of the present invention. FIG. 5 is a flowchart of an artificial intelligence-based 3D character rigging method reflecting user characteristics and joint constraints according to an embodiment of the present invention. It should be noted that in the drawings above, similar reference numbers are used to illustrate identical or similar elements, features, and structures. Specific details for implementing the invention
[0030] Hereinafter, embodiments of the present invention will be described in detail with reference to the attached drawings.
[0031] In describing the embodiments, technical details that are well known in the technical field to which the present invention belongs and are not directly related to the present invention are omitted. This is intended to convey the essence of the present invention more clearly without obscuring it by omitting unnecessary explanations.
[0032] For the same reason, some components in the attached drawings have been exaggerated, omitted, or schematically depicted. Additionally, the size of each component does not entirely reflect its actual dimensions. Identical or corresponding components in each drawing have been assigned the same reference numbers.
[0033] The advantages and features of the present invention and the methods for achieving them will become clear by referring to the embodiments described below in detail together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below but can be implemented in various different forms. These embodiments are provided merely to ensure that the disclosure of the present invention is complete and to fully inform those skilled in the art of the scope of the invention, and the present invention is defined only by the scope of the claims. Throughout the specification, the same reference numerals refer to the same components.
[0034] At this point, it will be understood that each block of the process flow diagrams and combinations of the flow diagrams can be executed by computer program instructions. Since these computer program instructions can be loaded into the processor of a general-purpose computer, a special-purpose computer, or other programmable data processing equipment, the instructions executed through the processor of the computer or other programmable data processing equipment create means to perform the functions described in the flow diagram block(s). Since these computer program instructions can also be stored in computer-available or computer-readable memory that can be directed toward the computer or other programmable data processing equipment to implement the function in a specific way, the instructions stored in computer-available or computer-readable memory can also produce a manufactured item containing instruction means to perform the function described in the flow diagram block(s). Since computer program instructions can be loaded onto a computer or other programmable data processing equipment, instructions that perform a series of operation steps on the computer or other programmable data processing equipment to create a process executed by the computer can also provide steps for executing the functions described in the flowchart block(s).
[0035] Additionally, each block may represent a module, segment, or part of code containing one or more executable instructions for executing a specified logical function(s). It should also be noted that in some alternative execution examples, the functions mentioned in the blocks may occur out of order. For instance, two blocks described in succession may actually be executed substantially simultaneously, or the blocks may be executed in reverse order according to their corresponding functions.
[0036] In this embodiment, the term "part" refers to a software or hardware component such as a field-programmable gate array (FPGA) or an application-specific integrated circuit (ASIC), and the "part" performs certain roles. However, the meaning of "part" is not limited to software or hardware. The "part" may be configured to reside in an addressable storage medium or configured to run one or more processors. Accordingly, as an example, the "part" includes components such as software components, object-oriented software components, class components, and task components, as well as processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functions provided within the components and "parts" may be combined into a smaller number of components and "parts" or further separated into additional components and "parts." In addition, the components and '~parts' may be implemented to play one or more CPUs within the device or secure multimedia card.
[0037] In describing the embodiments of the present invention in detail, the primary focus will be on examples of specific systems, but the main point claimed in this specification is applicable to other communication systems and services having a similar technical background without significantly departing from the scope disclosed in this specification, and this will be possible at the judgment of a person with skilled technical knowledge in the relevant technical field.
[0038] In addition, the user terminal described below may include a communication-capable desktop computer, laptop computer, notebook, smartphone, tablet PC, mobile phone, smart watch, smart glass, e-book reader, PMP (portable multimedia player), portable game console, navigation device, digital camera, DMB (digital multimedia broadcasting) player, digital audio recorder, digital audio player, digital video recorder, digital video player, PDA (Personal Digital Assistant), etc.
[0040] FIG. 1 is a conceptual diagram of an artificial intelligence-based 3D character rigging device reflecting user characteristics and joint constraints according to one embodiment of the present invention, and FIG. 2 is a block diagram of an electronic device (100) according to one embodiment of the present invention.
[0041] An electronic device (100) according to one embodiment includes a processor (110) and a memory (120). The processor (110) can perform at least one of the methods described above. The memory (120) can store information related to the method described above or store a program in which the method described above is implemented. The memory (120) may be volatile memory or non-volatile memory. The memory (120) may be referred to as a 'database', 'storage unit', etc.
[0042] The processor (110) can execute a program and control the electronic device (100). The code of the program executed by the processor (110) can be stored in memory (120). The device (100) can be connected to an external device (e.g., a personal computer or a network) through an input / output device (not shown) and exchange data.
[0043] At this time, the processor (110) receives three-dimensional character mesh data, a main structure data corresponding to the three-dimensional character mesh data, and character body characteristic data, calculates joint constraint data based on the character body characteristic data using an artificial intelligence model, creates a main structure data with embedded constraints by embedding the joint constraint data in the form of parameters into individual joint nodes constituting the main structure data, performs motion retargeting operations by applying external motion data to the main structure data with embedded constraints, identifies a specific motion that violates the joint constraint data during the motion retargeting operations, and calculates alternative pose data with a corrected trajectory to satisfy the joint constraint data to derive the final animation data.
[0044] The structural data seen here is substantially the same concept as the skeletal data mentioned in the preceding invention, and refers to a hierarchical skeletal network of sub-joints built inside a character to deform and control the external mesh of a 3D character.
[0045] Character body characteristic data is not information about a real-world person operating the controller, but rather a parameter that indicates the unique physical characteristics of the character itself existing in three-dimensional space (e.g., obesity level, limb length, age setting, etc.).
[0046] In addition, joint constraint data refers to data that quantifies the maximum angle or physical limit at which a specific joint can ergonomically bend. In the present invention, the various threshold values (such as the maximum allowable rotation angle threshold) that serve as the criteria for constraints are not fixed values provided by an external rendering engine.
[0047] This is a variable and dynamic threshold value that the artificial intelligence model of the present invention analyzes character body characteristic data and calculates and sets the value most suitable for the corresponding body type in real time.
[0048] In addition, motion retargeting is a standard technical term widely used by ordinary technicians in the fields of 3D graphics and animation, and refers to a series of computational processes that implement the same movement by transferring motion data acquired from an external source into the bone structure of a target character with different skeletal ratios.
[0049] Alternative pose data refers to coordinate data newly generated by artificial intelligence in a trajectory most naturally similar to the original motion within a range that does not exceed the set constraint threshold, rather than simply stopping the motion when an error is detected during the motion retargeting process.
[0050] This configuration fundamentally prevents critical graphic errors that occurred when applying external motion to characters with unique body types in conventional technology, and provides the effect of replacing manual correction work by the operator.
[0051] Because the conventional method applied standardized constraints uniformly to all characters, retargeting dynamic motions on models deviating from the standard body type resulted in phenomena where limbs dug into the expanded abdominal mesh or joints twisted grotesquely. The present invention first uses artificial intelligence to identify the unique physical characteristics of a 3D character and completely embeds the corresponding constraints as parameters within the structural data itself.
[0052] Therefore, even if any external motion is input, the character model can establish an intelligent defense system that recognizes its own physical limits and deflects errors.
[0053] For example, a situation can be assumed in which mesh data of a character with a severely protruding belly and external motion data of a martial arts kick by a nimble action actor are input into the present invention.
[0054] At this time, the artificial intelligence model analyzes the character body characteristic data indicating high obesity, calculates joint constraint data by drastically reducing the hip joint rotation threshold at which the leg can bend upward from the basic 130 degrees to 90 degrees, and embeds this into the corresponding bone structure data.
[0055] Subsequently, when motion retargeting operations are performed, if the original kick motion instructs the movement of raising the leg to 130 degrees, the present invention identifies this in real time as a specific motion that violates joint constraint data.
[0056] Accordingly, instead of forcibly bending the skeleton, the present invention mathematically calculates alternative pose data that compensates for dynamism by lifting the leg only up to a newly set threshold of 90 degrees and slightly bending the knee of the supporting foot.
[0057] Consequently, the present invention provides the effect of automatically generating natural final animation data that is most suitable for the body shape characteristics of the character, who is morbidly obese, without phenomena such as bones piercing through flesh or graphics tearing.
[0059] FIG. 3 is a diagram showing the maximum allowable rotation angle of a joint node according to one embodiment of the present invention.
[0060] Referring to FIG. 3, the processor can derive joint constraint data by extracting body ratio data and body shape obesity data included in the character body characteristic data, and by calculating the maximum allowable rotation angle (Range of Motion) and inverse kinematics limit range of each joint node in proportion to the body ratio data and body shape obesity data through regression operation of the artificial intelligence model.
[0061] Here, body proportion data refers to numerical information representing the relative lengths and skeletal proportions between each body part, such as arms, legs, and torso, that make up a 3D character. Body shape obesity data is a parameter representing the degree of fleshiness, such as the character's overall volume or the thickness of specific parts.
[0062] The regression operation of an artificial intelligence model is a machine learning technique that estimates continuous variable values beyond discrete classification, and in the present invention, it is used to automatically infer the most natural degree of joint bending as a continuous numerical value based on the external dimensions of a character.
[0063] Range of motion (ROM) refers to the maximum angle threshold at which a specific joint can rotate or bend anatomically without physical damage.
[0064] The inverse kinematics (IK) limit range refers to the maximum allowable spatial distance threshold that dependent parent joints can naturally reach when the three-dimensional position of a distal joint, such as a hand or foot, is determined.
[0065] In the present invention, these threshold values are not fixed default values uniformly provided by external software, but variable threshold values that are dynamically set in proportion to character body characteristic data through regression operations of artificial intelligence.
[0066] In other words, the present invention numerically analyzes characteristic changes, such as an increase in the volume of a character or a shortening of its limbs, and calculates joint constraint data by automatically narrowing or widening the physical limit (threshold) of movement of the corresponding body type.
[0067] This configuration overcomes the limitations of conventional technology that uniformly applies the same joint constraints to all 3D characters and provides the effect of autonomously generating customized movement limits that are perfectly optimized for the ratio of each character's actual skeleton and flesh.
[0068] Conventionally, whenever the target character changed, the operator had to manually measure and reset the bending limit angle and IK range of each joint. However, in this invention, when only the body shape parameters belonging to the character model are input, the artificial intelligence predicts physical constraints in advance and derives geometric limit values, thereby enabling the complete automation of the rigging process.
[0069] For example, a situation can be assumed in which irregular 3D character mesh data in the shape of a penguin with very short arms and a thick, protruding belly is input into the present invention. The artificial intelligence model performs a regression operation indicating that the body shape obesity data is high and the arm length is very short in the body proportion data.
[0070] Through this, the threshold value for the maximum allowable rotation angle at which the shoulder joint can bend inward is set to be significantly reduced from 120 degrees for a standard human body to 70 degrees. In addition, the threshold value for the inverse kinematic limit range that can be reached by extending the hand is also calculated to be reduced from a radius of 80 cm for a standard body to a radius of 30 cm in proportion to the arm length.
[0071] As a result, the present invention has the effect of completely blocking graphic errors in which a penguin character ignores its short arms and thick torso structure, extends its arms abnormally long, or grotesquely folds its shoulder joints into its torso, and precisely generates physical reference data most suitable for the body type.
[0072] In addition, the processor may calculate the volume area of a specific body part by calculating the surface curvature of the 3D character mesh data, calculate a three-dimensional collider metadata that completely encloses the calculated volume area, and generate the constraint embedded bone structure data by merging and embedding the three-dimensional collider metadata together with the joint constraint data in the joint node of the corresponding part.
[0074] FIG. 4 is a drawing showing a specific motion according to one embodiment of the present invention.
[0075] Referring to FIG. 4, the processor applies the external motion data to the constraint-embedded bone structure data on a frame-by-frame basis, and can identify the specific motion in real time by including both the angle violation area where the motion trajectory of the applied unit frame exceeds the maximum allowable rotation angle and the physical penetration (clipping) area where the bone encroaches on the three-dimensional collider metadata.
[0076] Here, external motion data refers to continuous motion information of a character input from motion capture equipment or an external animation generator. A frame unit refers to still image data, which is the minimum time unit constituting continuous animation motion.
[0077] An angle violation area refers to a graphical error state where the skeleton is grotesquely twisted because the bending trajectory of a joint indicated by external motion data exceeds ergonomic limits. A physical penetration area indicates a collision state in 3D space where a skeleton, such as an arm or leg, abnormally penetrates the mesh of another body part, such as the abdomen.
[0078] The threshold values serving as judgment criteria in this configuration are broadly classified into two forms. The first is the maximum allowable rotation angle, which is an angle threshold used to identify angle violation areas, and the second is the outer boundary of the 3D collider metadata, which is a spatial threshold used to identify physical penetration.
[0079] These threshold values are not standardized fixed values provided by external software. They are variable threshold values automatically set as values optimized for the corresponding body type by the artificial intelligence of the present invention in the previous computational step, which mathematically analyzes character body characteristic data such as character obesity and body proportions.
[0080] This configuration provides the effect of completely replacing manual cleanup work, in which animators in conventional technology had to go through animation frames one by one to pull bones out or correct joint angles.
[0081] Conventionally, after external motion was forcibly applied to the skeleton, an operator had to visually check and correct the error trajectory. On the other hand, the present invention detects physical violations in real time at the fleeting moment when motion retargeting calculations are performed, based on customized threshold parameters preemptively embedded within the skeleton node.
[0082] This enables the activation of an intelligent data defense system that fundamentally blocks graphic glitches at the pre-rendering stage, regardless of the type of external motion input.
[0083] For example, one can imagine a situation where a character with a protruding belly and a morbidly obese physique receives motion data on a frame-by-frame basis for strongly crossing their arms and bringing them to their chest.
[0084] As the animation frames progress, there are moments when the trajectory of the arm bone crosses the boundary of a three-dimensional collision object with a radius of 40 cm set around the abdomen, i.e., the spatial threshold. Additionally, there may be frames where the elbow joint attempts to bend to 120 degrees, exceeding the maximum allowable rotation angle of 100 degrees assigned to the body type, i.e., the angle threshold.
[0085] The present invention immediately identifies these specific frames, where a skeleton penetrates a collision body or a joint attempts to bend beyond a threshold value, as specific motions that are error occurrence sections. Consequently, the present invention has the effect of generating highly accurate time-series reference point data in real time to deflect incorrect motion trajectories and correct them to natural poses.
[0087] Additionally, the processor may calculate a plurality of preliminary pose coordinates that do not violate the maximum rotation allowable angle and the boundary surface conditions of the stereoscopic collider metadata for the frame in which the specific motion is identified, select the optimal coordinate among the plurality of preliminary pose coordinates that has the smallest numerical deviation from the original trajectory of the external motion data, and convert the specific motion into the alternative pose data to which mathematical smoothing is applied based on the selected optimal coordinate to derive the final animation data.
[0088] Here, preliminary pose coordinates refer to mathematically possible alternative 3D position data where the joint can be positioned while satisfying the constraints, instead of forcibly bending the skeleton or stopping the movement when external motion data is identified as an error situation violating ergonomic constraints.
[0089] Numerical deviation refers to the value calculated as the difference in spatial distance and angle between the original trajectory, which is the path of movement originally intended by the external motion, and the newly calculated preliminary pose coordinates.
[0090] Optimal coordinates are the result of selecting a single set of coordinates from among several alternatives that least damages the dynamism of the original motion or the original animation's intent. Mathematical smoothing refers to a calculus interpolation operation that connects the modified coordinates to the trajectories of the preceding and succeeding frames in the form of smooth curves, in order to prevent the joint trajectories from sharply bending or the motion from becoming choppy the moment the pose is modified to avoid errors.
[0091] In this configuration, the threshold values serving as the basis for calculating alternative poses are the maximum allowable rotation angle in terms of angle and the boundary surface conditions of the three-dimensional collider in terms of space. These threshold values are not uniform fixed values provided by external software, but rather dynamic and variable threshold values that the artificial intelligence of the present invention independently calculates and sets to match the character's unique body shape by analyzing character body characteristic data, such as obesity or body proportions, during the previous calculation stage.
[0092] This configuration goes beyond simply detecting physical violations occurring during the motion retargeting process; it provides the most critical intelligent control effect of the present invention, which automatically corrects the trajectory in real time by finding the movement closest to the original motion itself.
[0093] In conventional technology, when frames exceeding collision or bending limits were introduced, the graphic model would be exposed to tearing or digging, and to resolve this, manual cleanup work was essential for animators to manually move the joint coordinates outward frame by frame to refine them.
[0094] However, the present invention replaces the original motion by mathematically optimizing the optimal alternative pose within the allowed motion limits, thereby completely eliminating human manual correction intervention and producing smooth final animation data that can be immediately operated on commercial platforms.
[0095] For example, one can imagine a situation where a morbidly obese character with a massively protruding belly performs a dynamic martial arts motion, rotating and thrusting forward with their fist held tightly to their torso.
[0096] When the animation is executed according to the original trajectory, the fist joints penetrate the expanded abdominal mesh, violating the spatial threshold of the boundary surface condition of the three-dimensional collider. At this time, the present invention calculates dozens of preliminary pose coordinates that do not violate the collider boundary, such as raising the fist upward, lowering it downward, or spreading it outward.
[0097] Subsequently, the present invention selects the optimal coordinate among these coordinates that has the smallest spatial deviation from the original punch trajectory, that is, the coordinate where the fist barely passes by the surface of the abdomen.
[0098] Finally, by applying mathematical smoothing to smoothly overlay the trajectory so that the fist moves in a round and natural curve to avoid obstacles, it provides the effect of successfully deriving final animation data that physically perfectly fits the physical limit of the character's thick abdominal volume while maintaining the dynamism of the original martial arts motion.
[0100] Additionally, the processor may calculate a motion velocity vector by calculating the amount of change in the trajectory between frames of the specific motion, and when the condition is satisfied that the motion velocity vector exceeds a preset velocity threshold, perform mathematical smoothing by reducing the interpolation weight applied when performing spherical linear interpolation between the original trajectory of the specific motion and the optimal coordinates in proportion to the motion velocity vector, and when the condition is satisfied that the motion velocity vector is below the velocity threshold, perform mathematical smoothing by fixing the interpolation weight to a specified default value to derive the alternative pose data.
[0101] Here, the change in trajectory between frames refers to the difference in physical distance and direction in which a specific joint of a 3D character moves between consecutive still images. The motion velocity vector is a mathematical parameter that indicates the speed and direction of motion, calculated by dividing this change in trajectory by time units.
[0102] Spherical linear interpolation refers to a graphics rotation correction operation technique that connects two rotation coordinates in three-dimensional space by drawing the shortest and smoothest arc along the surface of a three-dimensional sphere rather than a straight line.
[0103] The interpolation weight is a value of the mixing ratio that determines the ratio in which the original motion trajectory with the error and the newly calculated optimal coordinates to correct it are mixed to make it smooth.
[0104] In this configuration, the speed threshold, which serves as a criterion for determining the speed of a movement, is a parameter set to classify the dynamism of the animation. This threshold is not merely a fixed value input from the outside, but a variable threshold calculated by the artificial intelligence of the present invention by analyzing character body characteristic data.
[0105] For example, in the case of a heavy character with high body obesity and short flight time, the speed threshold is calculated and set relatively low to 1.5 meters per second to reflect the slowing of muscle movement, and in the case of a character with a slender body type, it is set high to 3 meters per second, and so on; it is a reference value that is dynamically generated to match the physical movement characteristics of the body type.
[0106] This configuration provides a precise control effect that fundamentally prevents the phenomenon where the impact or speed of action animation is compromised during the motion correction process, causing the movement to become flat.
[0107] In conventional technology, applying strong smoothing in bulk to avoid mesh collision errors resulted in a problem where even fast-swinging motions became slow and sluggish, as if moving underwater.
[0108] This invention calculates motion velocity vectors in real time and mathematically reduces the interpolation weight as the motion speed increases. In other words, it intentionally reduces the effect of smoothing motion, thereby controlling the system to instantaneously avoid error areas while preserving the original motion's high speed and sharp impact sensation as much as possible.
[0109] For example, a situation can be assumed where a severely obese character performs a jab motion by throwing a fist very quickly. When the fist is in danger of penetrating an abdominal impactor, the present invention identifies in real time that the motion velocity vector of the fist is in a rapid motion state that exceeds a preset velocity threshold for the belly body type.
[0110] Accordingly, mathematical smoothing is performed by drastically reducing the interpolation weight applied when performing spherical linear interpolation from the default 0.8 to the 0.2 level.
[0111] As a result, alternative pose data is generated in which the fist does not slowly curve to avoid the belly fat collision, but extends outward in a very fast and sharp trajectory, grazing the boundary of the belly fat.
[0112] Conversely, in general motion conditions where the motion velocity vector is below the velocity threshold, such as a slow stretching motion, the interpolation weight is maintained at the specified default value. This induces the joint to move smoothly and leisurely along the abdominal curve, thereby producing high-quality final animation data that fully reflects the original intent and sense of speed of the animation.
[0114] Additionally, the processor can calculate the three-dimensional position displacement value of the lowest joint node connected to the first joint node via a hierarchical network when the rotation angle of the first joint node is transformed according to the selection operation of the optimal coordinates, identify the condition for foot sliding occurring when the three-dimensional position displacement value exceeds a preset position threshold, and when the condition for foot sliding occurs is satisfied, perform an inverse kinematics compensation operation to forcibly fix the three-dimensional coordinates of the lowest joint node to the original three-dimensional coordinates of the specific motion by applying the inverse kinematics limit range, and derive the final animation data by merging the result of the inverse kinematics compensation operation with the alternative pose data.
[0115] Here, the first joint node refers to a reference joint whose rotation trajectory or position has been changed to avoid errors during the preceding alternative pose calculation process, and it mainly indicates a part that forms the central axis of the body, such as the spine or hip joint. The hierarchical network refers to the mathematical dependent connection relationship between the upper parent joints and the lower child joints that constitute the skeleton of a 3D character.
[0116] The lowest joint node is located at the very end of this skeletal hierarchy and indicates the sole or ankle joint that is in direct contact with the ground. The 3D position displacement value is a numerical value calculated as the difference in spatial distance the dependent child joint, the sole, is lifted into the air or pushed sideways from its original position as the position of the parent joint is modified.
[0117] Ground slip refers to a fatal animation error where the entire skeleton moves and floats as if sliding on an ice sheet at a time when the foot should be fixed to the ground to support body weight. Inverse kinematics compensation is a mathematical processing step that corrects the position of the leg by recalculating the flexion angles of the knee and hip joints in reverse while keeping the target position of the sole of the foot fixed to the ground.
[0118] In this configuration, the position threshold, which is the criterion for determining the error, is the maximum distance threshold that allows the sole of the foot to deviate from the original coordinates of the ground. This threshold is also not a fixed value given from the outside, but a dynamic threshold that is variably set by artificial intelligence to match the physical characteristics of the body type by preemptively analyzing character body characteristic data such as leg length and foot size proportions.
[0119] For example, in the case of a character with very large feet and thick lower body, the position threshold is set somewhat loosely to 5 centimeters to induce natural weight transfer, and in the case of a character with thin legs and wearing high heels, the position threshold is set very strictly to 1 centimeter to reflect the narrow contact area, thereby maintaining strong ground contact.
[0120] This configuration provides a chain error blocking effect that perfectly corrects the problem of loss of lower body traction that inevitably follows when modifying the trajectory of the upper body or pelvis to avoid body collision errors such as belly fat penetration.
[0121] In conventional technology, when the position of an upper joint is modified, the entire lower joint is dragged by the same displacement, causing the character to slide as if skating. The present invention tracks the coordinate error of the sole of the foot caused by the modification of the pelvic position in real time, and activates inverse kinematics the moment the position threshold is exceeded to forcibly fix the position of the sole of the foot to the ground position where the original motion was.
[0122] This produces a precise correction effect in which the trajectory of the upper body naturally avoids collisions while maintaining the grip of the lower body firmly in the original motion.
[0123] For example, one can imagine a situation where a character with a severely obese body type performs a motion of sitting deeply into a squat position. To avoid physical penetration where the belly fat goes through the thigh, the AI calculates the optimal coordinates to move the pelvis, the first joint node, 10 centimeters backward and applies an alternative pose.
[0124] At this time, the sole joint of the foot, which is linked to the hierarchical structure network, also moves 10 centimeters backward along the pelvis, and since this significantly exceeds the pre-set position threshold of 3 centimeters for the corresponding body type, the present invention immediately identifies this as a condition for ground slippage.
[0125] As soon as an error is identified, the present invention activates an inverse kinematics compensation operation to forcibly fix the 3D coordinates of the sole of the foot that have been pushed backward, returning them to the forward ground coordinates indicated by the original squat motion. Then, while the sole of the foot is fixed, it mathematically compensates for the angle of the knee joint connected to the pelvis to be newly bent.
[0126] As a result, the character's two feet are perfectly maintained in a state of being firmly planted on the ground, while only the angles of the pelvis and knees are naturally modified, which has the effect of producing high-quality final animation data that gives the character a heavy sense of weight.
[0128] Additionally, the processor can calculate a distance value between the 3D coordinates of a virtual camera performing rendering and the center coordinates of the 3D character mesh data, and if the condition is satisfied that the distance value exceeds a preset distance threshold, it can perform a lightweight operation to reduce the number of vertices constituting the 3D collider metadata and reduce and apply the identification operation cycle of the specific motion, and if the condition is satisfied that the distance value is less than or equal to the distance threshold, it can control the allocation of computational resources by maintaining the original state of the 3D collider metadata and synchronizing the identification operation cycle to be the same as the frame rate of the external motion data.
[0129] Here, a virtual camera refers to a rendering point object that projects a scene to be displayed on the user screen in a 3D graphics environment, and the center coordinates refer to a spatial reference point representing the character's 3D position.
[0130] Lightweight computation is a 3D graphics optimization technique that reduces data processing load by lowering the polygon density of invisible 3D colliders that detect collisions.
[0131] The identification operation cycle refers to the temporal frequency that determines how many times per second the operation to detect the previously described motion angle violations or physical penetration errors is performed.
[0132] The far-distance threshold, which is the criterion for determining distance conditions in this configuration, is a spatial threshold parameter that defines a distance at which the character is sufficiently far from the user's field of view so that even if very precise collision and trajectory calculations are omitted, no visual awkwardness is revealed on the screen.
[0133] This threshold is not a constant fixed in the software, but a variable threshold that the artificial intelligence of the present invention dynamically sets by analyzing the character's total height or volume proportions included in the character body characteristic data.
[0134] For example, in the case of a very large giant monster character, the phenomenon of the limbs overlapping is easily visible to the user even when far away from the screen, so the AI calculates and sets the long distance threshold to 50 meters.
[0135] On the other hand, for very small fairy characters, it is determined that precise calculation is meaningless because they appear small in pixel units even when they are only slightly far from the camera, so the distance threshold is calculated and set to a short 10 meters.
[0136] This configuration provides a powerful resource optimization effect that fundamentally prevents computing resource exhaustion and system frame rate drops, which inevitably occur in metaverse platforms or massively multiplayer gaming environments where avatars with various body types interact simultaneously.
[0137] In conventional technology, precise collision detection and retargeting calculations were performed every frame for characters at a distance that were barely visible from the user's perspective, frequently resulting in memory overload and system freezes. The present invention intelligently prevents the waste of unnecessary computational resources by comprehensively analyzing the distance between the character and the camera and the character's inherent size, and by automatically adjusting the intensity of artificial intelligence calculations according to the rendering weight.
[0138] For example, a virtual reality plaza environment in which 100 characters are gathered in one space can be assumed. For a severely obese character located directly in front of a user, which is 3 meters away from a virtual camera and satisfies the condition of being below a distance threshold, the present invention maintains 100% of the original precision of the abdominal 3D collider and perfectly synchronizes with an external motion playback speed of 60 frames per second to strictly perform error identification calculations and derive alternative poses every frame.
[0139] On the other hand, for a character in the background that is 40 meters away from the camera and exceeds the distance threshold, the present invention immediately performs a lightweighting operation to significantly reduce the number of vertices constituting the three-dimensional collider, thereby creating a spherical shape that is lightweight to the level of a simple cuboid.
[0140] At the same time, the computation cycle for identifying errors is drastically reduced to once every 5 frames instead of every frame. As a result, the present invention perfectly guarantees the dynamism of key characters that attract attention in the center of the screen and flawless graphic quality, while drastically reducing the background computation load for processing the entire 3D scene, thereby producing the effect of ensuring seamless and smooth rendering even in a vast data environment.
[0142] Additionally, the processor can identify a jittering occurrence section in which the rotation value of the joint node changes discontinuously and rapidly by comparing the motion trajectories between each frame for all frames of the final animation data, calculate the phase difference between the sampling frequency of the external motion data and the operation frequency of the constraint embedded structure data for the jittering occurrence section, generate a time-synchronization offset that finely adjusts the external motion data in the time axis direction based on the phase difference, and re-perform the interpolation of the rotation value of the joint node by applying the time-synchronization offset to the final animation data.
[0143] Here, the jittering occurrence section refers to the temporal region in which the rotation angle of a joint between consecutive animation frames does not continue smoothly and exhibits a phenomenon of shaking or jumping in a fine and irregular manner beyond physical limits.
[0144] The sampling frequency refers to the data collection speed per second at which external motion capture equipment or software records and extracts motion data, and the computation frequency indicates the unique frame computation speed at which the present invention processes animation in a three-dimensional environment based on the structure data embedded with constraints.
[0145] Phase difference is the result of calculating the temporal misalignment or timing discrepancy between these two frequencies generated in different equipment and environments. Time synchronization offset is a mathematically generated time correction parameter that slightly advances or delays the time axis of external motion data to resolve this temporal discrepancy.
[0146] In this configuration, the jittering threshold, which is a criterion for determining whether the rotation value of a joint changes rapidly, is a parameter set to identify shaking errors in animation. This threshold is also not a uniform fixed value, but a dynamic threshold that is variably set to match the physical inertia of the body type by the artificial intelligence of the present invention analyzing in advance the mass distribution or bone thickness of the character included in the character body characteristic data.
[0147] For example, in the case of a fairy character with a light body weight and thin frame, a change in joint rotation of 20 degrees per frame is allowed as normal fast motion, so the jittering threshold is set high.
[0148] On the other hand, for morbidly obese or large characters wearing heavy armor, instantaneous change of direction is physically impossible due to inertia caused by mass, so the jittering threshold is calculated and set very low and strict so that even a change in rotation of more than 5 degrees per frame is considered abnormal shaking.
[0149] This configuration goes beyond geometric correction that modifies coordinates in three-dimensional space and provides the highest level of precision control effect that fundamentally eliminates graphic errors in the time axis dimension that inevitably occur due to differences in data processing speeds between different models.
[0150] In conventional technology, when external motion capture data precisely recorded at 120 Hertz (Hz) is forcibly applied to a character in a game engine running at 60 Hertz (Hz), the data timing is out of sync, and jittering frequently occurs, causing the character's limbs to shake slightly as if convulsing.
[0151] This invention intelligently resolves temporal conflicts that occur when heterogeneous data from different sources are combined, by generating a time synchronization offset through calculus analysis of the frequency phase difference between two data sets rather than simple position overwriting, and by finely sliding the data itself along the time axis to fully align it before re-performing interpolation.
[0152] For example, one can imagine a situation where martial arts action motions filmed on 144Hz high refresh rate equipment are retargeted onto bone structure data of an obese character in a metaverse environment operating at 30Hz. Due to a frequency mismatch between the two systems, a phenomenon occurs in which the character's wrist joint rotation value bends by as much as 15 degrees in just one frame and then returns to its original position in the middle of the punch trajectory.
[0153] The present invention calculates in real time whether the trajectory exceeds 5 degrees, which is a jittering threshold set for a heavy, severely obese character, and identifies this as a jittering occurrence section.
[0154] As soon as an error is identified, the present invention analyzes the data waveform between 144 Hertz and 30 Hertz to calculate a phase difference in units of 8 milliseconds (ms), and generates a time synchronization offset that exactly matches the operation cycle of the present invention by pulling the timeline of the external motion data by 8 milliseconds.
[0155] By applying this offset to align the misaligned time axis and then re-performing the rotation value interpolation of the wrist joint, the effect of completely eliminating the trembling spasm of the wrist when the obese character extends a punch and producing final animation data that extends smoothly and heavily frame by frame is achieved.
[0157] Additionally, the processor may call a physics-based computational model for each joint node constituting the constraint-embedded main structure data, calculate the moment of inertia of each joint node based on the character body characteristic data including mass distribution information between the joint nodes, and if the amount of change of the moment of inertia exceeds a preset threshold during the process of converting to the alternative pose data, assign a velocity weight corresponding to the optimal coordinate inversely proportional to the moment of inertia value during the selection operation for deriving the optimal coordinate.
[0158] Here, a physics-based computational model refers to an algorithm that mathematically simulates the mechanical physical laws of the real world, such as gravity, mass, and acceleration, in three-dimensional space. Mass distribution information is data that indicates the proportion of a character's total weight distributed among each body part, such as arms, legs, and torso.
[0159] Moment of inertia is a numerical representation of the physical resistance a rotating object exerts to maintain its current state of motion; its value increases as the mass of a specific part increases and it is further from the axis of rotation.
[0160] The velocity weight is a velocity parameter of the motion applied when a joint moves to a target alternate coordinate.
[0161] Assigning inversely proportional means that the heavier and more clumsy the joint—that is, the greater the moment of inertia—the lower the mathematical weight assigned to slow down the speed of movement to the target position.
[0162] In this configuration, the threshold value, which serves as a criterion for determining the amount of change in the moment of inertia, is a parameter set to determine the point at which physical realism is imparted to the animation motion.
[0163] This threshold is not given as a fixed constant from the outside, but is a dynamic threshold calculated variably by the artificial intelligence of the present invention by analyzing character body characteristic data.
[0164] For example, in the case of a character with a large, obese body type and high body fat percentage, the center of gravity of the entire body fluctuates significantly even with small movements or changes in direction, so the threshold value is calculated and set to be relatively low to sensitively detect changes in the moment of inertia.
[0165] On the other hand, since characters with a muscular, solid, and agile physique can easily control their bodies, physical control capabilities specific to each body type are reflected by calculating and setting a high threshold for them.
[0166] This configuration overcomes the limitations of conventional technology that avoided shape errors by simply geometrically correcting the movements of 3D characters, and provides an advanced effect that maximizes visual realism by mathematically fusing the character's actual weight and kinematic inertia into the animation.
[0167] Conventional technology only forcibly moved coordinates so that the skeletons would not overlap, resulting in a physical dissonance where a character with a heavy build moved excessively fast and lightly like a light feather when changing its trajectory.
[0168] The present invention derives a dynamically perfectly natural animation by simultaneously calculating the moment of inertia in the computational step of modifying the trajectory of the skeleton, and controlling the speed weight to allow the heavier part to detour slowly and heavily, reflecting the tendency to maintain the original trajectory.
[0169] For example, one can imagine a situation where a character with a morbidly obese physique, featuring a large belly and thick arms, performs the continuous punching motions (combination blows) of a nimble action actor.
[0170] When the AI calculates alternative pose coordinates to avoid physical penetration errors where the fist penetrates the abdominal impactor, it also calculates the moment of inertia of the arm based on the mass distribution information of the arm joints. When the thick arm abruptly changes the trajectory of the punch, the amount of change in the moment of inertia exceeds the threshold previously set low for the morbidly obese body type.
[0171] Accordingly, when performing the operation to select and move the optimal coordinates of an alternative pose, the present invention assigns a velocity weight that is significantly lowered and inversely proportional to the calculated moment of inertia value.
[0172] As a result, when the thick arm turns its trajectory to avoid the belly fat, instead of snapping back and forth as if teleporting, a slight delay occurs due to the heavy mass, and an animation is generated in which the trajectory changes heavily and powerfully.
[0173] This goes beyond simple shape correction to generate high-quality final animation data at the level of commercial film graphics, where the visual body characteristics and physical motion laws of the morbidly obese character perfectly match.
[0175] In addition, when the external motion data is input from multiple models with different formats, the processor can generate a mapping table by analyzing the semantic similarity between the joint names of each model and the individual joint nodes, convert the external motion data into intermediate representation data of a single standard through the mapping table, perform the motion retargeting operation, and for unregistered joint nodes that are not identified during the generation process of the intermediate representation data, perform a virtual joint generation operation that weighted averages the movements of adjacent joints by utilizing the hierarchical structure of the constraint-embedded bone structure data.
[0176] Here, multiple types refer to various external environments where the specifications for storing joint names and data structures differ depending on the software (e.g., Maya, Blender, etc.) or motion capture equipment used to produce 3D animation.
[0177] Semantic similarity is a parameter quantified by artificial intelligence contextually analyzing how well the anatomical location or kinematic role indicated by the word matches, even if the text strings referring to the joints do not completely match. The mapping table is a data correspondence table that automatically connects the joint names of external equipment and the joint names in the structural data of the present invention on a one-to-one basis based on the similarity analyzed in this way.
[0178] Intermediate representation data refers to a data specification in which fragmented external motion data is integrated and converted into a single universal standard format so that the retargeting engine of the present invention can immediately process them.
[0179] An unregistered joint node indicates a joint where the data is empty because the number of bones in the external motion data is less than the number of bones of the character of the present invention, so a pair cannot be found through the mapping table.
[0180] Virtual joint generation is a process of mathematically inferring movement data of parent and child joints connected in a hierarchical structure to create new trajectory data for non-existent joints in order to prevent errors where the movement of a specific part becomes frozen due to missing bone data.
[0181] The weighted average used at this time is not a calculation of an intermediate value by simply adding and dividing the rotation values of surrounding joints in a 1:1 ratio, but a precise mathematical processing method that derives an average value by assigning a higher multiplication ratio to the motion data of adjacent joints that are physically closer or have a greater influence on the mass distribution of the skeleton.
[0182] In this configuration, a similarity threshold, which serves as a criterion for determining whether to pair different joint names with the same joint, acts as the judgment standard. This threshold is not a constant fixed to the system, but a dynamic reference value that the artificial intelligence of the present invention sets variably based on the kinematic importance of the corresponding skeleton by preemptively analyzing character body characteristic data.
[0183] For example, in the case of the spine or hip joints, which are key joints that determine the character's overall center of gravity and pose, if they are mapped to the wrong parts, the entire animation will collapse, so the similarity threshold is calculated and set very strictly to 95 percent.
[0184] On the other hand, for fingertip joints that account for a relatively small portion of the overall movement, the similarity threshold is set to 70 percent to be somewhat generous, so that they can be flexibly mapped to adjacent joints even if their names are slightly different.
[0185] This configuration provides universal heterogeneous compatibility effects that allow all existing 3D motion data to be integrated and reused without being dependent on specific software or equipment.
[0186] In conventional technology, to apply motion data created in software A to a character on platform B, an operator had to go through a retargeting setup process in which they manually changed joint names one by one, and there was a critical limitation in that the data itself was incompatible if the number of bones was different.
[0187] The present invention not only fully automates data specification conversion but also maximizes the robustness of the invention against missing data by intelligently filling in missing movements using data from adjacent joints, even under adverse conditions where some data is lost or the skeletal structure is different.
[0188] For example, one can assume a situation in which raw data is input into the present invention, in which the external motion capture equipment labels the left thigh joint as LeftUpLeg and does not attach a sensor to the toe joint at all, thereby not capturing the data.
[0189] The artificial intelligence of the present invention identifies, through semantic similarity analysis, that LeftUpLeg has a high correlation with the Thigh_L joint of the present invention exceeding a strictly set similarity threshold, and generates a mapping table to smoothly connect the two data.
[0190] In addition, if a toe area that does not exist in the original is identified as an unregistered joint node during the mapping process, the present invention takes the rotational trajectories of the ankle joint and the center of the sole of the foot that are adjacent in the hierarchical structure and performs a weighted average based on physical distance.
[0191] Consequently, the present invention performs a virtual joint generation operation in which the toe nodes also naturally bend toward the ground in proportion to the angle at which the ankle bends forward, even though there is no toe movement at all in the original data.
[0192] This provides the effect of automatically generating perfect and natural final animation data without interruption or freezing, even if any incomplete external data is input.
[0194] FIG. 5 is a flowchart of an artificial intelligence-based 3D character rigging method reflecting user characteristics and joint constraints according to an embodiment of the present invention.
[0195] Referring to FIG. 5, an artificial intelligence-based 3D character rigging method reflecting user characteristics and joint constraint conditions according to one embodiment of the present invention may receive 3D character mesh data, structure data corresponding to the 3D character mesh data, and character body characteristic data (S101).
[0196] In addition, an artificial intelligence-based 3D character rigging method reflecting user characteristics and joint constraints according to one embodiment of the present invention can calculate joint constraint data based on the character body characteristic data using an artificial intelligence model (S103).
[0197] In addition, an artificial intelligence-based 3D character rigging method reflecting user characteristics and joint constraints according to one embodiment of the present invention can generate a structure data with embedded constraints by embedding the joint constraint data in the form of parameters into individual joint nodes constituting the structure data (S105).
[0198] In addition, an AI-based 3D character rigging method reflecting user characteristics and joint constraints according to one embodiment of the present invention can perform motion retargeting operations by applying external motion data to the structure data embedded with the constraints (S107).
[0199] In addition, an AI-based 3D character rigging method reflecting user characteristics and joint constraints according to one embodiment of the present invention can derive final animation data by identifying a specific motion that violates the joint constraint data during the motion retargeting operation and calculating alternative pose data in which the trajectory is corrected to satisfy the joint constraint data (S109).
[0200] In addition, the AI-based 3D character rigging method reflecting user characteristics and joint constraints according to one embodiment of the present invention can be configured in the same way as the AI-based 3D character rigging device reflecting user characteristics and joint constraints disclosed in FIGS. 1 to 4.
[0202] The embodiments described above may be implemented as hardware components, software components, and / or combinations of hardware and software components. For example, the devices, methods, and components described in the embodiments may be implemented using one or more general-purpose or special-purpose computers, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing unit may execute an operating system (OS) and one or more software applications executed on said operating system. Additionally, the processing unit may access, store, manipulate, process, and generate data in response to the execution of the software. For ease of understanding, the processing unit may be described as being used as a single unit, but those skilled in the art will understand that the processing unit may include multiple processing elements and / or multiple types of processing elements. For example, the processing unit may include multiple processors or one processor and one controller. Additionally, other processing configurations, such as parallel processors, are also possible.
[0203] The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., either alone or in combination. The program instructions recorded on the medium may be those specifically designed and configured for the embodiment, or they may be those known and available to those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes; optical recording media such as CD-ROMs and DVDs; magneto-optical media such as floptical disks; and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, and flash memory. Examples of program instructions include machine code, such as that generated by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc. The hardware devices described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.
[0204] Software may include computer programs, code, instructions, or a combination of one or more of these, and may configure a processing unit to operate as desired or command the processing unit independently or collectively. Software and / or data may be permanently or temporarily embodied in any type of machine, component, physical device, virtual equipment, computer storage medium or device, or transmitted signal wave so as to be interpreted by the processing unit or to provide instructions or data to the processing unit. Software may be distributed over networked computer systems and may be stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.
[0205] Although the embodiments have been described above with reference to the limited drawings, those skilled in the art can apply various technical modifications and variations based on the above. For example, suitable results may be achieved even if the described techniques are performed in a different order than described, and / or if the components of the described system, structure, device, circuit, etc. are combined or assembled in a form different from described, or replaced or substituted by other components or equivalents.
[0206] Therefore, other implementations, other embodiments, and equivalents to the claims also fall within the scope of the claims set forth below.
Claims
Claim 1 In an electronic device, memory; and a processor connected to said memory; An electronic device comprising: receiving 3D character mesh data, a main structure data corresponding to the 3D character mesh data, and character body characteristic data; calculating joint constraint data based on the character body characteristic data using an artificial intelligence model; creating a main structure data with embedded constraints by embedding the joint constraint data in the form of parameters into individual joint nodes constituting the main structure data; performing a motion retargeting operation by applying external motion data to the main structure data with embedded constraints; identifying a specific motion that violates the joint constraint data during the motion retargeting operation and calculating alternative pose data with a trajectory corrected to satisfy the joint constraint data to derive final animation data; and the processor extracts body proportion data and body shape obesity data included in the character body characteristic data, and derives the joint constraint data by calculating the maximum allowable rotation angle (Range of Motion) and inverse kinematics limit range of each joint node in proportion to the body proportion data and body shape obesity data through a regression operation of the artificial intelligence model. Claim 2 delete Claim 3 An electronic device according to claim 1, wherein the processor calculates a volume area of a specific body part by calculating the surface curvature of the three-dimensional character mesh data, calculates three-dimensional collider metadata that completely encloses the calculated volume area, and generates the constraint embedded bone structure data by merging and embedding the three-dimensional collider metadata together with the joint constraint data in the joint node of the corresponding part.
Citation Information
Patent Citations
Method and system of real-time graphical simulation of large rotational deformation and manipulation using modal warping
US20060139347A1
Real-time self collision and obstacle avoidance
US20090074252A1