Three-dimensional animation generation method and device, electronic equipment, medium, program product and three-dimensional digital human
By mapping the motion of a digital human's rigid structure to flexible accessories through bone structure correspondence, the method addresses computational inefficiencies and high costs, ensuring natural and smooth accessory motion in three-dimensional animations.
Patent Information
- Application Number
- CN202510323515.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-18
- Publication Date
- 2025-07-15
AI Technical Summary
The prior art simulates animations of three-dimensional digital humans wearing flexible accessories, which consumes high computing resources, affects real-time rendering performance, and the preset animation curve method lacks flexibility, makes it difficult to adapt to complex actions, and has high production costs.
By obtaining three-dimensional model data and animation data, determining the model structure data and pose information, mapping and generating animation data of flexible attachments, using bone data matching and pose information transmission, reducing the amount of physical simulation calculations, and realizing accurate animation driving of flexible attachments.
While reducing computing overhead, generate natural and smooth flexible attachment animation effects, suitable for mobile devices with limited computing resources.
Smart Images

Figure CN120318384A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of artificial intelligence technologies, particularly to technical fields such as computer vision, deep learning, large models, and augmented reality, and can be applied to scenarios such as digital humans. Specifically, it relates to a three-dimensional animation generation method, device, electronic device, medium, program product, and three-dimensional digital human. Background Art
[0002] Artificial intelligence is a discipline that studies making computers simulate certain human thinking processes and intelligent behaviors (such as learning, reasoning, thinking, planning, etc.), and there are both hardware-level technologies and software-level technologies. Artificial intelligence hardware technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, and big data processing; artificial intelligence software technologies mainly include several major directions such as computer vision technology, speech recognition technology, natural language processing technology, and machine learning / deep learning, big data processing technology, and knowledge graph technology.
[0003] Digital humans emerging in recent years are digital images created using technologies such as 3D modeling, animation, speech synthesis and recognition, and natural language processing, and can simulate human behaviors and interact with users in a virtual environment. Digital human technology usually involves 3D modeling to achieve a realistic appearance, speech technology to support intelligent conversations, and real-time rendering to ensure efficient interactions, etc. Therefore, digital humans are widely used in fields such as entertainment, education, and customer service to provide various role services such as virtual idols, personalized learning assistants, and intelligent customer service.
[0004] The methods described in this section are not necessarily methods that have been previously conceived or adopted. Unless otherwise specified, any method described in this section should not be considered prior art solely because it is included in this section. Similarly, unless otherwise specified, the problems mentioned in this section should not be considered to have been recognized in any prior art. Summary of the Invention
[0005] The present disclosure provides a three-dimensional animation generation method, device, electronic device, medium, program product, and three-dimensional digital human.
[0006] According to one aspect of the present disclosure, there is provided a method for generating a three-dimensional animation, including: obtaining first three-dimensional model data and first animation data of a first target object, and second three-dimensional model data of a second target object, where the second target object includes a flexible attachment worn by the first target object, and the first animation data indicates a first motion state of the first target object at at least one time point; determining first model structure data associated with the first motion state in the first three-dimensional model data, and second model structure data associated with the first motion state in the second three-dimensional model data; determining first pose information of the first model structure data based on the first animation data to map and obtain second pose information of the second model structure data; and generating second animation data of the second target object based on the second pose information, where the second animation data indicates a second motion state of the second target object at at least one time point.
[0007] According to another aspect of the present disclosure, there is provided a three-dimensional digital human, where the three-dimensional digital human wears a flexible attachment and performs a predetermined action to generate an animation, and the animation is generated according to the three-dimensional animation generation method described above.
[0008] According to another aspect of the present disclosure, there is provided a three-dimensional animation generation device, including: a data acquisition module configured to obtain first three-dimensional model data and first animation data of a first target object, and second three-dimensional model data of a second target object, where the second target object includes a flexible attachment worn by the first target object, and the first animation data indicates a first motion state of the first target object at at least one time point; a model structure data determination module configured to determine first model structure data associated with the first motion state in the first three-dimensional model data, and second model structure data associated with the first motion state in the second three-dimensional model data; a pose information determination module configured to determine first pose information of the first model structure data based on the first animation data to map and obtain second pose information of the second model structure data; and an animation data generation module configured to generate second animation data of the second target object based on the second pose information, where the second animation data indicates a second motion state of the second target object at at least one time point.
[0009] According to another aspect of the present disclosure, there is provided an electronic device, including at least one processor; and a memory communicatively connected to the at least one processor; the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the three-dimensional animation generation method described above in the present disclosure.
[0010] According to another aspect of the present disclosure, there is provided a non-transitory computer-readable storage medium storing computer instructions for causing a computer to execute the three-dimensional animation generation method described above in the present disclosure.
[0011] According to another aspect of the present disclosure, there is provided a computer program product including a computer program which, when executed by a processor, implements the three-dimensional animation generation method as described above in the present disclosure.
[0012] According to one or more embodiments of the present disclosure, it is possible to generate a digital human three-dimensional animation with natural dynamic effects while saving computing costs.
[0013] It should be understood that the content described in this part is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it used to limit the scope of the present disclosure. Other features of the present disclosure will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] The drawings exemplarily illustrate embodiments and constitute a part of the specification, and are used together with the written description of the specification to explain the exemplary embodiments. The illustrated embodiments are for illustrative purposes only and do not limit the scope of the claims. In all the drawings, the same reference numerals refer to similar but not necessarily identical elements.
[0015] Figure 1 A schematic diagram showing an exemplary system in which various methods described herein can be implemented according to an embodiment of the present disclosure;
[0016] Figure 2 A flowchart showing a three-dimensional animation generation method according to an embodiment of the present disclosure;
[0017] Figure 3A A schematic diagram showing first bone data determined based on the body structure of a first target object according to an embodiment of the present disclosure;
[0018] Figure 3B A schematic diagram showing second bone data determined based on the structural key points of a second target object according to an embodiment of the present disclosure;
[0019] Figure 4 A schematic diagram showing bone matching in a specific motion state according to an embodiment of the present disclosure;
[0020] Figure 5 A schematic diagram showing the second pose information for determining second model structure data according to an embodiment of the present disclosure;
[0021] Figure 6 A schematic diagram showing the constraint and correction of the second pose information according to an embodiment of the present disclosure;
[0022] Figure 7 A schematic diagram showing the fusion to generate target animation data according to an embodiment of the present disclosure;
[0023] Figure 8 The block diagram of a three-dimensional animation generation device according to an embodiment of the present disclosure is shown;
[0024] Figure 9 The block diagram of an exemplary electronic device capable of implementing the embodiments of the present disclosure is shown. Detailed implementation manners
[0025] The following describes exemplary embodiments of the present disclosure in conjunction with the accompanying drawings. Various details of the embodiments of the present disclosure are included to facilitate understanding, and they should be considered merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope of the present disclosure. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.
[0026] In the present disclosure, unless otherwise specified, the terms "first", "second", etc. are used to describe various elements and are not intended to limit the positional relationship, timing relationship, or importance relationship of these elements. Such terms are only used to distinguish one element from another. In some examples, the first element and the second element may refer to the same instance of the element, and in certain cases, based on the description of the context, they may also refer to different instances.
[0027] In the description of various examples in the present disclosure, the terms used are only for the purpose of describing specific examples and are not intended to be restrictive. Unless the context clearly indicates otherwise, if the number of elements is not specifically limited, the element may be one or more. In addition, the term "and / or" used in the present disclosure covers any one of the listed items and all possible combinations.
[0028] In the related art, the method of cloth simulation or the method of presetting animation curves is usually used to simulate the flexible accessories worn by the three-dimensional digital human. However, the method of cloth simulation consumes a large amount of computing resources, affects the real-time rendering performance, and makes it difficult to run on the mobile device side. The method of presetting animation curves lacks flexibility, is difficult to adapt to complex character actions, and requires additional animation assets, resulting in a high production cost.
[0029] Therefore, the embodiments of the present disclosure provide a more effective three-dimensional animation simulation technology for digital humans.
[0030] The embodiments of the present disclosure will be described in detail below in conjunction with the accompanying drawings.
[0031] Figure 1 The schematic diagram of an exemplary system 100 in which various methods and devices described herein can be implemented according to an embodiment of the present disclosure is shown. Refer to Figure 1, the system 100 includes one or more client devices 101, 102, 103, 104, 105, and 106, a server 120, and one or more communication networks 110 that couple the one or more client devices to the server 120. The client devices 101, 102, 103, 104, 105, and 106 can be configured to execute one or more applications.
[0032] In embodiments of the present disclosure, the server 120 can run to enable the execution of one or more services or software applications described in the embodiments of the present disclosure.
[0033] In certain embodiments, the server 120 can also provide other services or software applications, which can include non-virtual environments and virtual environments. In certain embodiments, these services can be provided as web-based services or cloud services, for example, provided to users of the client devices 101, 102, 103, 104, 105, and / or 106 under a software-as-a-service (SaaS) model.
[0034] In Figure 1 the configuration shown, the server 120 can include one or more components that implement the functions performed by the server 120. These components can include software components, hardware components, or a combination thereof that can be executed by one or more processors. Users operating the client devices 101, 102, 103, 104, 105, and / or 106 can in turn utilize one or more client applications to interact with the server 120 to utilize the services provided by these components. It should be understood that various different system configurations are possible, which can be different from the system 100. Therefore, Figure 1 is an example of a system for implementing the various methods described herein and is not intended to be limiting.
[0035] Users can use the client devices 101, 102, 103, 104, 105, and / or 106 to interact with a digital human, etc. The client device can provide an interface that enables the user of the client device to interact with the client device. The client device can also output information to the user via this interface. Although Figure 1 only six client devices are depicted, those skilled in the art will be able to understand that the present disclosure can support any number of client devices.
[0036] Client devices 101, 102, 103, 104, 105, and / or 106 may include various types of computing devices, such as portable handheld devices, general-purpose computers (such as personal computers and laptop computers), workstation computers, wearable devices, smart screen devices, self-service terminal devices, service robots, gaming systems, thin clients, various messaging devices, sensors, or other sensing devices, etc. These computing devices may run various types and versions of software applications and operating systems, such as MICROSOFT Windows, APPLE iOS, UNIX-like operating systems, Linux, or Linux-like operating systems (such as GOOGLE Chrome OS); or include various mobile operating systems, such as MICROSOFT WindowsMobile OS, iOS, Windows Phone, Android. Portable handheld devices may include cellular phones, smartphones, tablets, personal digital assistants (PDAs), etc. Wearable devices may include head-mounted displays (such as smart glasses) and other devices. Gaming systems may include various handheld gaming devices, Internet-enabled gaming devices, etc. Client devices are capable of executing various different applications, such as various Internet-related applications, communication applications (such as email applications), short message service (SMS) applications, and may use various communication protocols.
[0037] Network 110 may be any type of network known to those skilled in the art, which may support data communication using any of a variety of available protocols (including but not limited to TCP / IP, SNA, IPX, etc.). By way of example only, one or more networks 110 may be a local area network (LAN), an Ethernet-based network, token ring, wide area network (WAN), the Internet, a virtual network, a virtual private network (VPN), an intranet, an extranet, a blockchain network, a public switched telephone network (PSTN), an infrared network, a wireless network (such as Bluetooth, WIFI), and / or any combination of these and / or other networks.
[0038] Server 120 may include one or more general-purpose computers, dedicated server computers (such as PC (personal computer) servers, UNIX servers, midrange servers), blade servers, mainframes, server clusters, or any other suitable arrangement and / or combination. Server 120 may include one or more virtual machines running a virtual operating system, or other computing architectures involving virtualization (such as one or more flexible pools of logical storage devices that may be virtualized to maintain virtual storage devices for the server). In various embodiments, server 120 may run one or more services or software applications that provide the functions described below.
[0039] The computing units in server 120 can run one or more operating systems including any of the above-mentioned operating systems and any commercially available server operating systems. Server 120 can also run any one of a variety of additional server applications and / or middleware applications, including HTTP servers, FTP servers, CGI servers, JAVA servers, database servers, etc.
[0040] In some embodiments, server 120 can include one or more applications to analyze and combine data feeds and / or event updates received from users of client devices 101, 102, 103, 104, 105, and / or 106. Server 120 can also include one or more applications to display data feeds and / or real-time events via one or more display devices of client devices 101, 102, 103, 104, 105, and / or 106.
[0041] In some embodiments, server 120 can be a server of a distributed system or a server incorporating a blockchain. Server 120 can also be a cloud server or an intelligent cloud computing server or intelligent cloud host with artificial intelligence technology. A cloud server is a host product in the cloud computing service system to address the defects of high management difficulty and weak business scalability existing in traditional physical hosts and virtual private server (VPS) services.
[0042] System 100 can also include one or more databases 130. In certain embodiments, these databases can be used to store data and other information. For example, one or more of databases 130 can be used to store information such as audio files and video files. Databases 130 can reside in various locations. For example, the databases used by server 120 can be local to server 120 or can be remote from server 120 and can communicate with server 120 via a network-based or dedicated connection. Databases 130 can be of different types. In certain embodiments, the databases used by server 120 can be, for example, relational databases. One or more of these databases can store, update, and retrieve data to and from the databases in response to commands.
[0043] In certain embodiments, one or more of databases 130 can also be used by applications to store application data. The databases used by applications can be different types of databases, such as key-value repositories, object repositories, or conventional repositories supported by a file system.
[0044] Figure 1The system 100 can be configured and operated in various ways to enable the application of the various methods and apparatuses described in this disclosure.
[0045] The three-dimensional animation generation method and various aspects of the three-dimensional digital human according to the embodiments of this disclosure will be described in detail below.
[0046] Figure 2 A flowchart of a three-dimensional animation generation method 200 according to an embodiment of this disclosure is shown.
[0047] As Figure 2 shown, the method 200 includes step S201, step S202, step S203, and step S204.
[0048] In step S201, first three-dimensional model data and first animation data of a first target object, and second three-dimensional model data of a second target object are acquired. The second target object includes a flexible attachment worn by the first target object. The first animation data indicates the first motion state of the first target object at at least one time point.
[0049] In an example, the first target object may refer to a three-dimensional digital human, which may be, for example, a three-dimensional digital character used for generating animations, such as a certain anime character or anthropomorphic model, etc. The three-dimensional digital human may have specific structure, topology, texture, material, etc. information for defining its three-dimensional model attributes, that is, the first three-dimensional model data. The first animation data may be data recording the animation process of the three-dimensional digital human, and this data may be used to describe information related to the motion state (such as walking, jumping, or turning, etc.) of the three-dimensional digital human at a series of consecutive time points, for example, including position changes, action trajectories, etc. In practical applications, a character model can be created or imported through three-dimensional modeling software, and an animation tool can be used to set a series of action paths for the character, thereby forming animation data. When this animation data is run in a three-dimensional animation engine, an animation effect of the first target object can be generated.
[0050] In an example, the second target object may be a flexible attachment attached to the first target object and worn on the body by the first target object, such as a skirt hem, a cape, etc. When the first target object moves, the flexible attachment, as a wearable of the digital human, its motion effect is consistent with the actions of the digital human and conforms to the logic of physical laws. For example, when the digital human wearing a cape walks, the cape will flutter in the direction of the human body's displacement. Similar to the first three-dimensional model data of the first target object, the second three-dimensional model data of the second target object may include specific structure, topology, texture, material, etc. information for defining its three-dimensional model attributes of the flexible attachment.
[0051] Since the natural movement of the flexible attachment not only depends on its own material properties, but is also affected by the actions of the digital human it attaches to, accurately depicting the motion state of the first target object can help reasonably predict and simulate the dynamic effects of the flexible attachment.
[0052] In step S202, determine the first model structure data associated with the first motion state in the first three-dimensional model data, and the second model structure data associated with the first motion state in the second three-dimensional model data.
[0053] In the example, the first model structure data can be a data subset in the first three-dimensional model data. For example, the first model structure data can be the structure data in the first three-dimensional model data used to describe information related to a specific action. For example, when a digital human wearing a skirt is in the first motion state of walking, the corresponding first model structure data can be the structure data of the parts involved in the movement such as the legs of the digital human. Similarly, the second model structure data can be a data subset in the second three-dimensional model data. For example, the second model structure data can be the structure data in the second three-dimensional model data related to the first motion state of walking mentioned above. Still taking the digital human wearing a skirt in the first motion state of walking as an example, the second model structure data can be the structure data of the skirt hem, which corresponds to the legs of the digital human. Thus, guided by the first motion state of the first target object, a specific association relationship is established between the first three-dimensional model data and the second three-dimensional model data, so that under the condition of knowing the first animation data of the first target object, the second animation data of the second target object can be obtained from the above association relationship.
[0054] In step S203, based on the first animation data, determine the first pose information of the first model structure data to map and obtain the second pose information of the second model structure data.
[0055] In the example, since the first animation data can include position change information related to the specific movement of the three-dimensional digital human at a series of consecutive time points, such as the movement trajectory, etc., the rotation angle, displacement amount, etc. of the parts of the digital human related to the specific movement at different time points can be determined by parsing the first animation data, that is, the first pose information, and the first pose information is used to indicate the position information of the first model structure data under the specific movement. For example, when a digital human wearing a skirt is walking, the pose information (such as displacement amount) of the parts related to walking, such as the legs, can be parsed out, that is, the first pose information.
[0056] In the example, since the second model structure data is the structure data related to the first motion state in the flexible attachment, that is, the structure data in the flexible attachment that needs to follow the movements of the digital human, therefore, based on the rotation angle, displacement amount, etc. of the part of the digital human related to a specific action, by transferring the motion characteristics of the first target object to the second target object, the rotation angle, displacement amount, etc. of the part in the flexible component that needs to follow the movements of the digital human can be calculated, that is, the second pose information. Still taking the digital human wearing a skirt walking as an example, based on the displacement amount of the digital human's leg at a certain time point, the displacement amount of the skirt following the movement of the leg at this time point can be calculated, that is, the pose information of the skirt, so that the skirt can adjust its own displacement according to the movement of the digital human and achieve dynamic synchronization.
[0057] In step S204, based on the second pose information, second animation data of the second target object is generated, and the second animation data indicates the second motion state of the second target object at at least one time point.
[0058] In the example, according to the second pose information such as the rotation angle and displacement amount of the part in the second target object that needs to follow the movements of the digital human at a certain time point, the motion state of the above-mentioned part of the second target object at this time point can be determined, that is, the second motion state. Furthermore, based on the pose information of the above-mentioned part of the second target object at each time point, a continuous animation can be generated to form a smooth motion sequence, that is, the second animation data, and finally a natural dynamic effect can be shown.
[0059] Therefore, by determining the parts related to a specific motion in the first target object and the second target object, and calculating the pose information of the relevant components to generate a 3D animation, precise control of the animation driving of the flexible attachment of the 3D digital human can be achieved, enabling it to show a natural and smooth motion state in the animation sequence. On the other hand, since only the components related to a specific motion are calculated and there is no need to perform corresponding physical calculations for each vertex of the model, the physical simulation calculation amount can be reduced, the calculation overhead can be reduced, and the smoothness and real-time performance of the animation can be ensured, making it highly applicable even in the scenario of mobile devices with high requirements for real-time rendering and computing resources.
[0060] In some embodiments, the first model structure data may include first bone data determined based on the body structure of the first target object, and the second model structure data may include second bone data determined based on the structure key points of the second target object.
[0061] In the example, since the first target object is usually a humanoid shape or anthropomorphic shape, the first skeletal data mentioned in this article can be understood as being defined based on the body structure of the humanoid shape or anthropomorphic shape. The first skeletal data can be a data subset in the first model structure data, which can be obtained, for example, by using algorithms such as edge detection, skeleton extraction, and pattern recognition to identify various joint points and bone orientations that conform to the body structure of a 3D digital human. Similarly, the second skeletal data can be a data subset in the second model structure data. However, for the second target object, since the flexible attachment itself does not have a complete skeletal system, the second skeletal data can be defined by analogy with the concept of the first skeletal data. The second skeletal data can be constructed by selecting structural key points that play a decisive role in the dynamic performance of the flexible attachment according to a preset structural key point rule. Taking a skirt as an example, the structural characteristics of the skirt can be analyzed first to find the structural key points that affect the movement of the skirt, such as the connection point between the skirt and the human waist, the concave or convex points of the skirt edge folds, etc. The second skeletal data is constructed based on these structural key points.
[0062] Since bones are usually body parts strongly related to movement, the movement state can be accurately associated with the bones. Therefore, by constructing two types of skeletal data respectively, structured motion control data representations can be provided for different target objects, which is beneficial to transfer specific motion characteristics between the first target object and the second target object, and then the second animation data of the second target object can be obtained based on the first animation data of the first target object.
[0063] Figure 3A FIG. shows a schematic diagram of the first skeletal data determined based on the body structure of the first target object according to an embodiment of the present disclosure. Figure 3B FIG. shows a schematic diagram of the second skeletal data determined based on the structural key points of the second target object according to an embodiment of the present disclosure.
[0064] As Figure 3A shown, the first target object can be the humanoid shape shown in the figure. Correspondingly, based on the body structure of the first target object, the first skeletal data 301-309 can be determined, such as shoulder skeletal data 301 and 303, arm skeletal data 302 and 304, spine skeletal data 305, thigh skeletal data 306 and 307, and calf skeletal data 308 and 309. One or more of these skeletal data can be associated with a specific motion state. For example, when the first target object performs a jumping action, at least the thigh skeletal data 306 and 307 and the calf skeletal data 308 and 309 can be associated with the motion state of the jumping action.
[0065] Similarly, as Figure 3BAs shown, the second target object can be the dress shown in the figure, and this dress can be worn by the Figure 3A first target object shown. As described above, the key structural points of this dress can be determined based on its structural characteristics. For example, the key structural points can include, as shown in Figure 3B the skirt pleats shown, and accordingly, the corresponding second bone data 311 can be determined. It can be understood that Figure 3B only the skirt pleats are taken as an example for illustration, and the scope of the present disclosure is not limited thereto. For example, the key structural points of this dress can also include the skirt edge, the ornaments attached to the skirt, etc., and correspondingly, the second bone data 311 can also have various different corresponding ways.
[0066] In some embodiments, as combined with Figure 2 the step S202, the first model structure data associated with the first motion state in the first three-dimensional model data, and the second model structure data associated with the first motion state in the second three-dimensional model data may include: based on a preset bone correspondence rule, the first bone data and the second bone data are determined by matching the first motion state, where the preset bone correspondence rule includes the correspondence relationship between the first bone data and the second bone data in the first motion state.
[0067] In the example, the preset bone correspondence rule can be a preset correspondence relationship for bone matching, which is used to clarify the correspondence relationship between the first bone data of the first target object and the second bone data of the second target object when the first target object is in a certain specific motion state. In the embodiments of the present disclosure, when the first target object is in different motion states, according to the different motion states, the first bone data and the second bone data to be matched are also correspondingly different. Therefore, it is necessary to set a bone correspondence rule for matching. For example, when the digital human wears a skirt and walks, according to the walking posture, it can be determined that the leg bones, arm bones, and skirt part of the digital human are dynamically changing. However, since the change of the skirt part may only correspond to the leg bones, the leg bone data can be determined as the first bone data, and the bone data of the corresponding skirt part can be determined as the second bone data. Another example is when the digital human makes a movement of lifting the skirt forward, the arm bones and the front part of the skirt of the digital human are dynamically changing. Therefore, the arm bone data can be determined as the first bone data, and the bone data of the corresponding front part of the skirt can be determined as the second bone data.
[0068] Therefore, by presetting the bone correspondence rules so that the association relationship between the first bone data and the second bone data based on the first motion state is defined via the bone correspondence rules, the motion synchronization relationship between the first target object and the second target object under different first motion states can be effectively constructed, enabling the motion characteristics of the first target object to be accurately transmitted to the second target object, thereby achieving dynamic synchronization and motion coordination between the two, and further facilitating the precise control of the flexible attachment animation driving of the 3D digital human.
[0069] Figure 4 FIG. shows a schematic diagram of bone matching in a specific motion state according to an embodiment of the present disclosure.
[0070] As Figure 4 shown, on the left side, the first target object corresponding to a digital human is shown, and on the right side, the dress worn by the digital human, i.e., the second target object, is shown. Assume that when the digital human is walking, according to the current motion state, the bone data associated with the current motion state can be determined as the calf bone data 401 of the digital human and the bone data 411 of the dress. Then, the bone correspondence rules can be preset based on such an association relationship. Thus, when it is known that the first target object is in a certain specific motion state, the first bone data of the first target object and the second bone data of the second target object can be determined by matching the motion state.
[0071] In some embodiments, the step of determining the first bone data and the second bone data by matching the first motion state based on the preset bone correspondence rules may include: creating a script file for performing the matching based on the preset bone correspondence rules; running the script file to determine the first bone data and the second bone data.
[0072] In the example, to ensure that the first bone data and the second bone data can be matched according to the first motion state, a script file for performing the matching can be created based on the preset bone correspondence rules. For example, rule algorithms can be embedded in the script file, instructions for reading, parsing, and matching bone data can be set, variables can be set to store the information of the first bone data and the second bone data, and logical code can be written to implement finding the second bone data corresponding to the first bone data according to the current motion state of the digital human according to the preset rules, thereby establishing the correspondence relationship between the two sets of data and forming a unified matching result.
[0073] In the example, after creating the script file, the script file can be run to determine the first skeletal data and the second skeletal data. For example, when running the first animation data of the first target object in a 3D animation engine, when the 3D digital human starts walking, the leg skeletal data of the digital human can be obtained in real time. After the script file receives these data and matches them according to the preset rules, the skirt skeletal data corresponding to the leg skeletal data can be found.
[0074] Therefore, by creating a script file to determine the skeletal data, the manual workload can be reduced, the work efficiency and the matching accuracy can be improved. At the same time, the consistency and stability of data processing can be ensured, which is convenient for quickly and accurately realizing the motion correlation correspondence between the first target object and the second target object.
[0075] In some embodiments, such as in combination with Figure 2 The step S203 described above is based on the first animation data to determine the first pose information of the first model structure data, and the second pose information of the second model structure data can be mapped, including: reading the first animation data to determine the target time points at which the first motion state is not stationary from at least one time point; determining the first pose information of the first model structure data corresponding to the target time points; mapping the first pose information to the second model structure data to obtain the second pose information of the second model structure data.
[0076] In the example, reading the first animation data can be, for example, running the first animation data in a 3D animation engine. As the first animation data runs, the animation of the first target object at a series of consecutive time points can be presented. However, in this animation, the first target object is not necessarily always in motion, so there may be some time points corresponding to the first target object being stationary. Accordingly, in order to determine how the second target object should move, the target time points corresponding to non-stationary points other than the above-mentioned time points can be selected. The purpose of selecting these target time points is to ensure that subsequent processing focuses on the moments with dynamic changes.
[0077] In the example, after determining the target time points, the first pose information of the first model structure data at the target time points can be determined according to the first animation data. For example, if the digital human is spinning at a certain target time point, the displacement and / or rotation angle of the leg bones can be obtained from the first animation data.
[0078] In the example, in order for the movement of the flexible attachment to naturally follow the movements of the digital human, it is necessary to calculate the pose information of the second model structure data of the flexible attachment corresponding to the pose information of the first model structure data of the digital human. This is the process of mapping, that is, the transfer of motion characteristics. For example, when a digital human wearing a skirt is walking, the leg bones of the digital human move. According to this mapping relationship, the movement of the bones of the corresponding skirt part can be calculated.
[0079] Therefore, by using the method of transferring motion characteristics to achieve the mapping between two model structure data, the second pose information of the second target object can be obtained when the first pose information of the first target object is known, which is conducive to obtaining the second animation data of the second target object.
[0080] Figure 5 The figure shows a schematic diagram of determining the second pose information of the second model structure data according to an embodiment of the present disclosure.
[0081] As Figure 5 shown, when the digital human is walking, the pose information of the calf bone data 501 of the hind leg changes. At this time, the change in the pose information of the calf bone data 501 can be mapped to the bone data 510, 520, and 530 of the skirt. For example, the bone data 510, 520, and 530 of the skirt are displaced and / or rotated accordingly to achieve the effect that the skirt swings upward following the walking movement of the digital human.
[0082] In some embodiments, both the first pose information and the second pose information include at least one of displacement or rotation. The step of mapping the first pose information to the second model structure data to obtain the second pose information of the second model structure data may include: adjusting at least one of the displacement or rotation of the second model structure data so that the first motion state of the first target object is transferred to the second target object to obtain the second pose information.
[0083] In the example, displacement and rotation can be parameters in terms of relative change amounts. For example, they can be the change amounts in position movement and rotation angle compared with the previous time point at the current time point. Using these two parameters as the basic quantization indicators of the motion state can reflect the position change and direction change of the target object in three-dimensional space.
[0084] In the example, in the scenario where a digital human wearing a skirt is spinning, the waist bone of the digital human rotates, and the part of the skirt connected to the waist needs to be rotated accordingly. For example, the proportional relationship between the rotation amplitude of the skirt and the rotation amplitude of the waist of the digital human can be set, and the rotation angle of the skirt can be calculated according to this proportional relationship, so as to realize the adjustment of the structure data of the skirt.
[0085] Therefore, by adjusting the second model structure data in terms of displacement and / or rotation, it can be ensured that the flexible attachment can synchronously follow the motion changes of the digital human.
[0086] In some embodiments, as described in connection with Figure 2 step S204 of generating the second animation data of the second target object based on the second pose information may include: determining whether the second pose information satisfies a preset pose constraint condition, where the preset pose constraint condition defines the motion range of the second target object; in response to determining that the second pose information does not satisfy the preset pose constraint condition, correcting the second pose information based on the upper limit value or the lower limit value of the motion range to obtain second corrected pose information; and generating the second animation data of the second target object based on the second corrected pose information.
[0087] In an example, after determining the second pose information of the second target object, in order to ensure the naturalness and rationality of the animation effect, pose constraint conditions may be preset in advance. Such conditions clearly define the maximum and minimum motion ranges allowed for the second target object during motion. For example, in the scenario where a digital human wearing a skirt is walking, the maximum lifting angle of the skirt can be set to 60 degrees and the minimum lifting angle to 15 degrees. Further, by comparing the actually obtained second pose information with the preset pose constraint conditions, it can be determined whether the motion range meets the requirements. If the comparison result shows that the displacement and / or rotation data in the second pose information exceeds or is lower than the preset pose constraint conditions, it indicates that the current motion range does not meet the preset conditions. Then, the pose information can be corrected according to the upper limit value or the lower limit value of the motion range. For example, the displacement or rotation data that exceeds the range can be truncated or corrected by linear interpolation so that the adjusted data strictly falls within the allowed motion range.
[0088] In an example, according to the corrected second pose information and in combination with the time series, the specific positions and postures of the second target object at different times can be determined, thereby generating complete second animation data. For example, corresponding to consecutive time intervals, the position changes of the skirt lifting are sequentially recorded to form continuous animation data.
[0089] Therefore, by setting upper and lower limit values to constrain the second pose information, it can be ensured that the motion of the second target object conforms to the logic of physical laws, avoiding overly exaggerated or unreasonable actions, and thus ensuring the authenticity and rationality of the finally generated animation.
[0090] Figure 6 FIG. shows a schematic diagram of the constraint and correction of the second pose information according to an embodiment of the present disclosure.
[0091] As Figure 6As shown, a digital person starts walking from a stationary state while wearing a dress. In order to express the change of the posture information of the digital person when walking, the extension line 601 of the center of gravity of the digital person along the vertical direction can be used as the reference position, which also corresponds to the position when the skirt bone naturally droops. When the digital person steps out the left leg and lifts the right leg as shown in the figure, the skirt will swing, and the swing amplitude is set to an angle not less than the lower limit value α and not greater than the upper limit value β. That is, the swing amplitude of the skirt bone is not less than the angle α between the extension line 602 (the lowest position reached by the skirt bone swinging upward) and the extension line 601, and is not greater than the angle β between the extension line 603 (the highest position reached by the skirt bone swinging upward) and the extension line 601.
[0092] In some embodiments, the preset posture constraint condition may include at least a first constraint condition associated with a lifting amplitude of the second target object, and a second constraint condition associated with a retraction amplitude of the second target object.
[0093] In the example, in order to better constrain the second posture information, constraints associated with the lifting amplitude and the retraction amplitude can be set for the second target object. The constraints associated with the lifting amplitude can specify the maximum vertical rise range of the target object, that is, when the second target object is in motion, the local or overall lifting amplitude shall not exceed the predetermined upper limit to avoid unnatural movement caused by excessive lifting. The second constraint associated with the retraction amplitude can limit the degree of convergence of the target object to the center position, ensuring that the retraction amplitude does not exceed the established limit, thereby preventing morphological distortion due to excessive retraction. Taking the hem as an example, the reasonable lifting amplitude and retraction amplitude can be determined based on the material, length and overall design style of the hem. For example, if the hem is made of light silk and the design style is more elegant, the first constraint can be set to a maximum lifting amplitude of no more than 70 degrees, and the second constraint is that the retraction amplitude of the hem cannot be less than one-third of its initial width.
[0094] Therefore, by constraining the lifting amplitude and the retraction amplitude of the second target object, it can be ensured that the motion trajectory of the second target object conforms to the laws of physical motion while maintaining visual realism.
[0095] In some embodiments, such as in combination Figure 2 The step S204 may include generating second animation data of the second target object based on the second posture information, in response to determining that the second posture information satisfies a preset posture constraint, performing physical simulation calculations based on the second posture information to optimize the second motion state of the second target object, and the physical simulation calculations may include simulation calculations for at least one of gravity, elasticity, rigidity or damping.
[0096] In the example, after confirming that the second pose information meets the constraint conditions, in order to make the finally generated animation effect more natural, it is also necessary to perform physical simulation calculations on the second pose information. Among them, gravity simulation can ensure that the second target object follows the action of the earth's gravity during the animation process, showing natural drooping and swinging; elastic simulation can make the second target object produce appropriate stretching and contraction when subjected to external forces; rigid simulation can ensure that some parts of the second target object maintain a certain shape and avoid excessive deformation; damping simulation can generate resistance to the movement of the second target object, slow down its movement, and avoid excessive swinging.
[0097] Therefore, through these physical simulation calculations, the second pose information can be optimized, so that the movement state of the second target object not only meets the preset constraint conditions, but also more conforms to the real physical laws, thus showing a natural and realistic dynamic effect when presenting the animation.
[0098] In some embodiments, the first animation data and the second animation data are fused to obtain target animation data corresponding to at least one time point.
[0099] In the example, the first animation data may include the motion state information of the first target object at each time point, and the second animation data may include the motion state information of the second target object at each time point. Therefore, the first animation data and the second animation data can be fused, that is, the two sets of data are aligned in time sequence and parameter integrated at the same time point, so as to generate target animation data that can reflect the comprehensive effect of the motion states of both. For example, in a certain game scene, the animation data of the digital human model can be read through the game engine as the first animation data. If the digital human takes a step forward at a certain moment, the pose information of the skirt corresponding to the leg can be calculated according to the pose information of the leg, and the second animation data of the skirt can be generated. Finally, the data at the corresponding time points of these two animation data are integrated according to the time axis to obtain the effect of the skirt swinging with the digital human.
[0100] Therefore, through the method of fusing animation data, the consistency between the actions of the digital human and the movement of the flexible attachment can be ensured, presenting a natural and smooth animation effect.
[0101] Figure 7 Shows a schematic diagram of fusing to generate target animation data according to an embodiment of the present disclosure.
[0102] As Figure 7As shown, after the second animation data 702 related to the flexible attachment is calculated by the method described above, the first animation data 701 of the digital human can be fused with the second animation data 702 related to flexible attachments such as the skirt, and finally the target animation data 703 in which the flexible attachments such as the skirt move naturally along with the actions of the digital human is generated.
[0103] According to an embodiment of the present disclosure, there is also provided a three-dimensional digital human, which wears a flexible attachment and performs a predetermined action to generate an animation, and the animation is generated according to the three-dimensional animation generation method described above (for example, in combination with Figure 2 the three-dimensional animation generation method 200 described).
[0104] In the example, the three-dimensional digital human may refer to a three-dimensional digital human model constructed by using computer graphics technology, having an appearance, a limb structure, and an action performance ability. The three-dimensional digital human can wear flexible components such as a skirt and a cloak, and generate an animation according to the predetermined action and the three-dimensional animation generation method described above. For example, for the animation of a three-dimensional digital human wearing a cloak running, the cloak can adjust the amplitude of its lift according to the change in speed.
[0105] Therefore, through the three-dimensional animation generation method described above, the animation effect in which the three-dimensional digital human naturally wears the flexible attachment and moves in accordance with the flexible attachment can be achieved. At the same time, compared with generating the animation of the three-dimensional simulated digital human wearing the flexible attachment based on the traditional cloth simulation technology, since it is not necessary to perform corresponding physical calculations for each vertex of the flexible attachment model, the physical simulation calculation amount can be reduced, the calculation overhead can be reduced, and it has strong applicability even in the mobile device scenario with high requirements for real-time rendering and computing resources.
[0106] Figure 8 The structural block diagram of a three-dimensional animation generation device 800 according to an embodiment of the present disclosure is shown.
[0107] As Figure 8As shown, the device 800 includes a data acquisition module 801, a model structure data determination module 802, a pose information determination module 803, and an animation data generation module 804. The data acquisition module 801 is configured to acquire first three-dimensional model data and first animation data of a first target object, and second three-dimensional model data of a second target object, where the second target object includes a flexible attachment worn by the first target object, and the first animation data indicates a first motion state of the first target object at at least one time point. The model structure data determination module 802 is configured to determine first model structure data associated with the first motion state in the first three-dimensional model data, and second model structure data associated with the first motion state in the second three-dimensional model data. The pose information determination module 803 is configured to determine first pose information of the first model structure data based on the first animation data, so as to map and obtain second pose information of the second model structure data. The animation data generation module 804 is configured to generate second animation data of the second target object based on the second pose information, where the second animation data indicates a second motion state of the second target object at at least one time point.
[0108] The operations of the above-mentioned data acquisition module 801, model structure data determination module 802, pose information determination module 803, and animation data generation module 804 can respectively correspond to the operations of steps S201, S202, S203, and S204 as shown in Figure 2 Therefore, the details of each aspect are not described herein again.
[0109] According to an embodiment of the present disclosure, there is also provided an electronic device, including at least one processor; and a memory communicatively connected to the at least one processor, where the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the method as described above.
[0110] According to an embodiment of the present disclosure, there is also provided a non-transitory computer-readable storage medium storing computer instructions, where the computer instructions are used to cause a computer to execute the method as described above.
[0111] According to an embodiment of the present disclosure, there is also provided a computer program product, including a computer program, where the computer program implements the method as described above when executed by a processor.
[0112] Refer to Figure 9, a block diagram of an electronic device 900 that can be a server or a client of the present disclosure will now be described. It is an example of a hardware device that can be applied to various aspects of the present disclosure. The electronic device is intended to represent various forms of digital electronic computer devices, such as, laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as, personal digital processors, cellular phones, smart phones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are only examples and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0113] As Figure 9 shown, the electronic device 900 includes a computing unit 901, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 902 or a computer program loaded from a storage unit 908 into a random access memory (RAM) 903. In the RAM 903, various programs and data required for the operation of the electronic device 900 can also be stored. The computing unit 901, the ROM 902, and the RAM 903 are connected to each other through a bus 904. An input / output (I / O) interface 905 is also connected to the bus 904.
[0114] Multiple components in the electronic device 900 are connected to the I / O interface 905, including: an input unit 906, an output unit 907, a storage unit 908, and a communication unit 909. The input unit 906 can be any type of device that can input information into the electronic device 900. The input unit 906 can receive input digital or character information, and generate key signal inputs related to the user settings and / or function controls of the electronic device, and can include but are not limited to a mouse, a keyboard, a touch screen, a trackpad, a trackball, a joystick, a microphone, and / or a remote control. The output unit 907 can be any type of device that can present information, and can include but are not limited to a display, a speaker, a video / audio output terminal, a vibrator, and / or a printer. The storage unit 908 can include but are not limited to magnetic disks, optical disks. The communication unit 909 allows the electronic device 900 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks, and can include but are not limited to a modem, a network card, an infrared communication device, a wireless communication transceiver, and / or a chipset, such as a Bluetooth device, an 802.11 device, a WiFi device, a WiMax device, a cellular communication device, and / or the like.
[0115] The computing unit 901 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 901 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 901 executes the various methods and processes described above. For example, in some embodiments, the method can be implemented as a computer software program tangibly embodied in a machine-readable medium, such as the storage unit 908. In some embodiments, part or all of the computer program can be loaded and / or installed onto the electronic device 900 via the ROM 902 and / or the communication unit 909. When the computer program is loaded into the RAM 903 and executed by the computing unit 901, one or more steps of the method described above can be executed. Alternatively, in other embodiments, the computing unit 901 can be configured to execute the method in any other suitable way (e.g., by means of firmware).
[0116] The various embodiments of the systems and techniques described above in this document can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGA), application-specific integrated circuits (ASIC), application-specific standard products (ASSP), system-on-chip systems (SOC), complex programmable logic devices (CPLD), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include: implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a dedicated or general-purpose programmable processor, and can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit the data and instructions to the storage system, the at least one input device, and the at least one output device.
[0117] The program code for implementing the methods of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when the program codes are executed by the processor or controller, the functions / operations specified in the flowchart and / or block diagram are implemented. The program codes can be executed entirely on the machine, partially on the machine, as an independent software package partially on the machine and partially on a remote machine, or entirely on a remote machine or server.
[0118] In the context of this disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. The machine-readable medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of the machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0119] To provide for interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices can also be used to provide for interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic, speech, or tactile input).
[0120] The systems and techniques described herein can be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer having a graphical user interface or a web browser through which the user can interact with an implementation of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local area network (LAN), wide area network (WAN), the Internet, and blockchain networks.
[0121] A computer system may include a client and a server. The client and the server are generally far from each other and usually interact through a communication network. The relationship between the client and the server is generated by computer programs running on respective computers and having a client-server relationship with each other. The server may be a cloud server, a server of a distributed system, or a server incorporating a blockchain.
[0122] It should be understood that various forms of processes shown above can be used, steps can be reordered, added or deleted. For example, the steps described in this disclosure can be executed in parallel, sequentially or in a different order, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved, and this is not limited herein.
[0123] Although embodiments or examples of the present disclosure have been described with reference to the accompanying drawings, it should be understood that the above methods, systems and devices are merely exemplary embodiments or examples, and the scope of the present invention is not limited by these embodiments or examples, but is only defined by the authorized claims and their equivalent scope. Various elements in the embodiments or examples can be omitted or replaced by their equivalent elements. In addition, the steps can be executed in an order different from that described in this disclosure. Further, various elements in the embodiments or examples can be combined in various ways. Importantly, with the evolution of technology, many of the elements described herein can be replaced by equivalent elements that emerge after this disclosure.
Claims
1. A three-dimensional animation generation method, comprising: Obtaining first three-dimensional model data and first animation data of a first target object, and second three-dimensional model data of a second target object, where the second target object includes a flexible attachment worn by the first target object, and the first animation data indicates a first motion state of the first target object at at least one time point; Determining first model structure data associated with the first motion state in the first three-dimensional model data, and second model structure data associated with the first motion state in the second three-dimensional model data; Based on the first animation data, determining first pose information of the first model structure data to map to second pose information of the second model structure data; And Based on the second pose information, generating second animation data of the second target object, where the second animation data indicates a second motion state of the second target object at the at least one time point.
2. The method according to claim 1, wherein The first model structure data includes first bone data determined based on the body structure of the first target object, and the second model structure data includes second bone data determined based on the structural key points of the second target object.
3. The method according to claim 2, wherein The determining the first model structure data associated with the first motion state in the first three-dimensional model data, and the second model structure data associated with the first motion state in the second three-dimensional model data, includes: Based on a preset bone correspondence rule, determining the first bone data and the second bone data by matching the first motion state, where the preset bone correspondence rule includes a correspondence relationship between the first bone data and the second bone data in the first motion state.
4. The method according to claim 3, wherein The determining the first bone data and the second bone data by matching the first motion state based on the preset bone correspondence rule includes: Based on the preset bone correspondence rule, creating a script file for performing the matching; and Running the script file to determine the first bone data and the second bone data.
5. The method according to any one of claims 1 to 4, wherein The determining the first pose information of the first model structure data based on the first animation data to map to the second pose information of the second model structure data includes: Reading the first animation data to determine a target time point from the at least one time point at which the first motion state is not stationary; Determining the first pose information corresponding to the target time point of the first model structure data; and Mapping the first pose information to the second model structure data to obtain the second pose information of the second model structure data.
6. The method according to claim 5, wherein, Both the first pose information and the second pose information include at least one of displacement or rotation, and the mapping the first pose information to the second model structure data to obtain the second pose information of the second model structure data includes: Adjusting at least one of the displacement or the rotation of the second model structure data such that the first motion state of the first target object is transmitted to the second target object to obtain the second pose information.
7. The method according to any one of claims 1 to 6, wherein Generating the second animation data of the second target object based on the second pose information includes: Determining whether the second pose information meets a preset pose constraint condition, where the preset pose constraint condition defines the motion range of the second target object; In response to determining that the second pose information does not meet the preset pose constraint condition, correcting the second pose information based on the upper limit value or the lower limit value of the motion range to obtain second corrected pose information; and Generating the second animation data of the second target object based on the second corrected pose information.
8. The method according to claim 7, wherein The preset pose constraint condition at least includes a first constraint condition associated with the lifting amplitude of the second target object and a second constraint condition associated with the adduction amplitude of the second target object.
9. The method according to claim 7 or 8, wherein Generating the second animation data of the second target object based on the second pose information includes: In response to determining that the second pose information meets the preset pose constraint condition, performing physical simulation calculations based on the second pose information to optimize the second motion state of the second target object, and the physical simulation calculations include simulation calculations for at least one of gravity, elasticity, rigidity, or damping.
10. The method according to any one of claims 1 to 9, wherein The method further includes: Fusing the first animation data and the second animation data to obtain target animation data corresponding to the at least one time point.
11. A three-dimensional digital human, wherein, The three-dimensional digital human wears a flexible accessory and performs a predetermined action to generate an animation, and the animation is generated according to the method according to any one of claims 1 to 10.
12. A three-dimensional animation generation device, comprising: A data acquisition module configured to acquire first three-dimensional model data and first animation data of a first target object, and second three-dimensional model data of a second target object, where the second target object includes a flexible accessory worn by the first target object, and the first animation data indicates a first motion state of the first target object at at least one time point; A model structure data determination module configured to determine first model structure data associated with the first motion state in the first three-dimensional model data and second model structure data associated with the first motion state in the second three-dimensional model data; A pose information determination module configured to determine first pose information of the first model structure data based on the first animation data to map and obtain second pose information of the second model structure data; And An animation data generation module configured to generate second animation data of the second target object based on the second pose information, where the second animation data indicates a second motion state of the second target object at the at least one time point.
13. An electronic device, comprising: At least one processor; And A memory communicatively connected to the at least one processor; Wherein, the memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the method according to any one of claims 1-10.
14. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause a computer to execute the method according to any one of claims 1-10.
15. A computer program product comprising a computer program, wherein, The computer program, when executed by a processor, implements the method according to any one of claims 1-10.