Model generation method, device and electronic device

By creating the first curve of dynamic attributes and the second curve that can be scaled or partially stretched in the animation, combining the dynamic system and the bone chain, the floating effect of the target model is automatically controlled, and the problems of high production cost and low fidelity in the existing technology are solved, achieving efficient and realistic floating effect.

CN114663555BActive Publication Date: 2025-08-22NETEASE (HANGZHOU) NETWORK CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210150650.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-02-14
Publication Date
2025-08-22
Estimated Expiration
2042-02-14

AI Technical Summary

Technical Problem

The prior art requires tedious manual production when creating animations with fluttering effects, which is costly and has limited realistic fluttering effects.

Method used

By creating a first curve with dynamic properties and a second curve that is scalable or partially stretchable, combined with the dynamic system and skeleton chain, the floating effect of the target model is automatically controlled to avoid manual production of keyframes.

Benefits of technology

It reduces the production cost, increases the realistic level of the floating effect, and realizes the independent floating and rich dynamic performance of the model.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114663555B_ABST
    Figure CN114663555B_ABST
Patent Text Reader

Abstract

The present invention provides a model generation method, device, and electronic device, wherein the method includes: creating a first curve, creating a skeletal chain based on the first curve; creating a second curve based on the first curve; wherein the first curve has dynamic properties; the second curve has scalability properties; the first curve or the second curve has a locally stretchable property; the first curve is used to control the state of the second curve through the state of the first curve; the second curve is used to control the state of the skeletal chain through the state of the second curve; creating a dynamic system for the first curve; wherein the dynamic system is used to provide a power source to give the first curve a dynamic motion state; and generating a target model based on the first curve, the second curve, and the skeletal chain. This method achieves a fluttering effect of the model by combining dynamics with the binding of the skeletal chain, eliminating the need for manual keyframe creation, reducing production costs, and improving the realism of the fluttering effect.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of three-dimensional animation, and in particular to a model generation method, device and electronic equipment. Background Art

[0002] When creating animations, some virtual characters or virtual scenes need to have a fluttering effect, such as the clothes, hair, and ribbons on the virtual characters. When creating an animation with a fluttering effect, an initial animation is first created. In this initial animation, the target model that originally had a fluttering effect does not have the fluttering effect. Then, a keyframe is created. In this keyframe, the target model is displaced or deformed. The displacement or deformation of the target model in the keyframe is caused by the fluttering motion of the target model. Then, through interpolation, the fluttering effect of the target model in the animation is achieved. This method of creating a fluttering effect requires tedious manual production, is costly, and has limited realism. Summary of the Invention

[0003] In view of this, the object of the present invention is to provide a model generation method, device and electronic device to simplify the complex and time-consuming animation production of floating effects, reduce production costs, and at the same time improve the realism of the floating effects.

[0004] In a first aspect, an embodiment of the present invention provides a model generation method, which creates a first curve, creates a skeleton chain based on the first curve; creates a second curve based on the first curve; wherein the first curve has dynamic properties; the second curve has scalable properties; the first curve or the second curve has a local stretchable property; the first curve is used to: control the state of the second curve through the state of the first curve; the second curve is used to: control the state of the skeleton chain through the state of the second curve; create a dynamic system for the first curve; wherein the dynamic system is used to provide a power source so that the first curve has a dynamic motion state; and generate a target model based on the first curve, the second curve and the skeleton chain.

[0005] After the above step of creating the second curve based on the first curve, the method further includes: connecting the second curve and the skeleton chain through a preset control handle node; wherein the control handle node is used to: control the state of the skeleton chain through the state of the second curve; connecting the second curve and the first curve through a preset blend deformation node; wherein the blend deformation node is used to: control the state of the second curve through the state of the first curve.

[0006] The method further includes: responding to a scaling operation on the second curve, controlling the skeleton chain to scale as a whole through the handle node, and displaying the scaled skeleton chain.

[0007] The above method also includes: in response to the first curve generating dynamic motion, controlling the second curve to move following the motion state of the first curve through the above fusion deformation node to obtain the motion state of the second curve; and controlling the skeleton chain to move following the motion state of the second curve through the above control handle node.

[0008] After the above-mentioned step of creating a second curve based on the first curve, the method further includes: in response to the local curve in the target curve being stretched, measuring the stretched length of the local curve through a preset distance measurement node; wherein, the target curve is the first curve or the second curve with a local stretchable property; based on the stretched length of the local curve, adjusting the length of the local bone in the bone chain corresponding to the local curve.

[0009] The above-mentioned step of measuring the stretched length of the local curve through a preset distance measurement node in response to the stretching of the local curve in the target curve includes: determining a first node and a second node from the target curve; in response to a movement operation acting on the second node, stretching the local curve between the first node and the second node to determine the final position of the second node; and measuring the curve distance between the final positions of the first node and the second node through the distance measurement node to obtain the length of the local curve.

[0010] The above-mentioned step of adjusting the length of the local bone in the bone chain corresponding to the local curve based on the stretched length of the local curve includes: determining the local bone in the bone chain corresponding to the local curve; obtaining the number of bone units in the local bone and the initial length of each bone unit in the local bone; determining the first length of each bone unit in the local bone based on the stretched length of the local curve and the number of bone units in the local bone; and controlling each bone unit in the local bone to stretch from the initial length to the first length.

[0011] The above step of creating a dynamic system for the first curve includes: creating a hair system and a follicle node; and connecting the first curve and the hair system through the follicle node.

[0012] The above steps of creating a hair system include: creating a hair system shape node and a dynamic solver node in the hair system; associating the first time parameter in the hair system shape node and the second time parameter in the dynamic solver node with the time parameters of the time axis respectively; associating the initial state parameters of the hair system shape node with the input parameters of the dynamic solver node; associating the output parameters of the dynamic solver node with the update state parameters of the hair system shape node; associating the first start frame parameter of the dynamic solver node with the second start frame parameter of the hair system shape node.

[0013] The above-mentioned step of connecting the first curve and the hair system through the follicle node includes: associating the output hair parameters of the hair system shape node in the hair system with the current position parameters in the follicle node; associating the output hair parameters in the follicle node with the input hair parameters of the hair system shape node in the hair system; associating the world matrix parameters of the initial state of the first curve with the initial position matrix parameters in the follicle node; and associating the output curve parameters in the follicle node with the creation parameters of the first curve.

[0014] After the above step of creating a dynamic system for the first curve, the method further includes: creating a controller and setting the follicle nodes in the dynamic system in the controller; controlling the controller to move in accordance with the movement of the first model, so as to control the first curve to generate a dynamic motion state through the follicle nodes, and controlling the motion state of the skeletal chain through the motion state of the first curve.

[0015] After the above-mentioned step of generating a target model based on the first curve, the second curve and the skeletal chain, the method further includes: in response to the movement of the first model, controlling the first curve in the above-mentioned target model to generate dynamic motion through the dynamic system of the target model; wherein the target model is connected to the first model through a controller in the dynamic system; obtaining the motion state of the first curve, and controlling the motion state of the second curve through the motion state of the first curve; and controlling the motion state of the skeletal chain through the motion state of the second curve, so that the target model generates dynamic motion.

[0016] In the second aspect, an embodiment of the present invention provides a model generation device, which includes: a first creation module, used to create a first curve, and create a skeleton chain based on the first curve; a second creation module, used to create a second curve based on the first curve; wherein the first curve has dynamic properties; the second curve has scalable properties; the first curve or the second curve has local stretchable properties; the first curve is used to: control the state of the second curve through the state of the first curve; the second curve is used to: control the state of the skeleton chain through the state of the second curve; a third creation module, used to create a dynamic system for the first curve; wherein the dynamic system is used to provide a power source so that the first curve has a dynamic motion state; a generation module, used to generate a target model based on the first curve, the second curve and the skeleton chain.

[0017] In a third aspect, an embodiment of the present invention provides an electronic device comprising a processor and a memory, wherein the memory stores machine executable instructions that can be executed by the processor, and the processor executes the machine executable instructions to implement the above-mentioned model generation method and model display control method with floating effect.

[0018] In a fourth aspect, an embodiment of the present invention provides a machine-readable storage medium, which stores machine-executable instructions. When the machine-executable instructions are called and executed by a processor, the machine-executable instructions prompt the processor to implement the above-mentioned model generation method and model display control method with floating effect.

[0019] The embodiments of the present invention bring the following beneficial effects:

[0020] The above-mentioned method for determining a model generation comprises creating a first curve, creating a skeletal chain based on the first curve, and creating a second curve based on the first curve. The first curve has dynamic properties, the second curve has scalability, and either the first curve or the second curve has a locally stretchable property. The first curve is used to control the state of the second curve through the state of the first curve, and the second curve is used to control the state of the skeletal chain through the state of the second curve. A dynamic system is created for the first curve, wherein the dynamic system provides a power source to impart a dynamic motion state to the first curve. A target model is generated based on the first curve, the second curve, and the skeletal chain. In this method, the first curve has dynamic properties, the second curve has scalability, and either the first curve or the second curve has a locally stretchable property. The dynamic system provides a power source for the first curve, and the state of the second curve is controlled by the state of the first curve. The properties of both curves can be applied to the state of the skeletal chain controlled by the state of the second curve, thereby imparting a stretchable and scalable fluttering effect to the skeletal chain of the model. This method achieves a fluttering effect by combining dynamics with skeletal chain binding, eliminating the need for manual keyframe creation, reducing production costs, and improving the realism of the fluttering effect.

[0021] Other features and advantages of the present invention will be described in the following description, and in part will become apparent from the description, or understood by practicing the present invention. The purposes and other advantages of the present invention are realized and obtained by the structures particularly pointed out in the description, claims and drawings.

[0022] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, preferred embodiments are given below and described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0023] In order to more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the specific embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without paying any creative work.

[0024] Figure 1A flow chart of a model generation method provided by an embodiment of the present invention;

[0025] Figure 2 A flow chart of a model display control method provided by an embodiment of the present invention;

[0026] Figure 3 A schematic structural diagram of a model generation device provided by an embodiment of the present invention;

[0027] Figure 4 A schematic structural diagram of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0028] To make the objectives, technical solutions, and advantages of the embodiments of the present invention more clear, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the embodiments described are only part of the embodiments of the present invention, not all of them. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work shall fall within the scope of protection of the present invention.

[0029] In 3D games, soft bodies such as cloth, hair, ribbons, and clothing are common models. The simulation quality of soft bodies directly impacts the realism of 3D games and the user experience. In scenes, soft body skeletal chains are often used to achieve soft body movement. However, since traditional skeletal rigging in animations cannot achieve autonomous movement, tedious manual production is required. Prior art approaches to creating soft body models with floating effects can be broadly divided into two stages: animation and special effects. First, in the animation stage, animators use animation software to create the initial animation and select keyframes. Then, special effects developers perform deformation operations such as displacement, stretching, and contraction on the target model within the keyframes. Through interpolation, the soft body model's floating effects, such as pendant-following, fluttering clothing corners, and stretched hair, are achieved. This method of creating floating effects requires tedious manual production, is costly, and offers limited fidelity. Therefore, there is an urgent need to provide a technology that efficiently simplifies the animation special effects production process and enriches the floating of soft body models.

[0030] Based on the above, the embodiments of the present invention provide a model generation method, device and electronic device. This technology can be specifically applied in three-dimensional creation platforms such as Maya, 3Dmax, and Blender for scene animation special effects production.

[0031] To facilitate understanding of this embodiment, a model generation method disclosed in an embodiment of the present invention is first described in detail. Figure 1 As shown, the method includes the following steps:

[0032] Step S102: creating a first curve, and creating a skeleton chain based on the first curve;

[0033] In 3D games, flexible body skeletal chains are often used to achieve flexible body movement. Considering that each character model's clothing, fabric, and movement are unique, a curve is needed to outline the flexible body model. This curve is the first curve mentioned above.

[0034] Specifically, the first curve can be a curve created using NURBS modeling tools on three-dimensional creation platforms such as Maya, 3Dmax, and Blender. The type of the curve can be a CV curve controlled by control vertices or an EP curve controlled by EP (EditPoint) points. Here, we take the EP curve created on the Maya creation platform as an example for a detailed introduction.

[0035] Furthermore, tools such as Xform can be used to obtain position information, such as position coordinates, of each EP point of the first curve. Skeletal node information can be determined based on the EP point position information, and then a skeletal chain can be created based on the skeletal node information. In one embodiment, the EP point coordinates of the first curve can be designated as skeletal joint node position coordinates, and a flexible body skeletal chain can be drawn based on the skeletal joint node positions.

[0036] Step S104: creating a second curve based on the first curve; wherein the first curve has a dynamic property; the second curve has a scalable property; the first curve or the second curve has a locally stretchable property; the first curve is used to control the state of the second curve by the state of the first curve; and the second curve is used to control the state of the skeletal chain by the state of the second curve;

[0037] The above-mentioned second curve can be created by copying the first curve. The dynamic attribute refers to the use of dynamic technology on the first curve, giving it physical properties such as gravity, reaction force, acceleration, etc., which can make its state change according to the laws of physics. Among them, dynamic technology includes: forward dynamics and inverse dynamics. Taking the rotation of the joints of the skeleton chain as an example, forward dynamics is to rotate each joint one by one from the start joint to the end joint along the hierarchy of the bones when positioning the skeleton chain; inverse dynamics is to reversely solve the motion position of each joint in the entire skeleton chain according to the desired target position of the end joint, without having to consider how each joint rotates. Therefore, when the motion target is determined, it is more convenient to use inverse kinematics than forward kinematics.

[0038] Create a second curve based on the first curve. The state of the first curve, which has dynamic properties, controls the state of the second curve, which has scalable properties. The state of the second curve controls the state of the skeleton chain. This means that the skeleton chain can be bound by the second curve, and the state of the first curve can be applied to the skeleton chain through the state of the second curve. In this way, the states of both curves can be transferred to the state of the skeleton chain and displayed.

[0039] In one implementation, the first curve has dynamic properties and local stretchability properties, and the second curve has scalability properties. In this case, the first curve can control the dynamic motion state of the skeleton chain and the local stretchability of the skeleton chain, and the second curve controls the overall scaling of the skeleton chain.

[0040] In another implementation, the first curve has dynamic properties, and the second curve has scalability properties and local stretchability properties. In this case, the first curve can control the dynamic motion state of the skeleton chain, and the second curve controls the overall scaling of the skeleton chain and the local stretchability of the skeleton chain.

[0041] Step S106, creating a dynamic system for the first curve; wherein the dynamic system is used to provide a power source so that the first curve has a dynamic motion state;

[0042] The above-mentioned power system can be understood as a motion platform that can output time, posture, position change and other motion parameter information. By associating with other motion support structures, it provides a power source for the first curve, giving the first curve a dynamic motion state.

[0043] In this step, a dynamic system is created for the first curve, so that the first curve has a dynamic motion state. Combined with step S104, the dynamic system information can be transmitted to the second curve and then applied to the state of the skeleton chain, providing dynamic support for the entire skeleton system, solving the problems of the skeleton chain not being able to float and the hair stretching by itself, and allowing the skeleton chain to be stretched at will while having the special effect of autonomous movement.

[0044] Step S108: Generate a target model based on the first curve, the second curve, and the skeleton chain.

[0045] The target model can be flexible models such as clothes, hair, ribbons, and cloth on the virtual character mentioned above, or various models in the virtual scene ranging from jelly-like and elastic to almost rigid but deformable and floating.

[0046] In this step, a target model is generated based on the first and second curves and the skeleton chain. The autonomous movement of the skeleton chain drives the target model's motion, allowing it to freely expand and contract and display a dynamic, fluttering effect. By integrating dynamics technology with skeleton chain rigging, the complex and time-consuming production of animation effects is simplified, eliminating tedious manual labor and significantly reducing production costs.

[0047] The model generation method described above creates a first curve, creates a skeletal chain based on the first curve, and creates a second curve based on the first curve. The first curve has dynamic properties, the second curve has scalability, and either the first or the second curve has a locally stretchable property. The first curve is used to control the state of the second curve through the state of the first curve, and the second curve is used to control the state of the skeletal chain through the state of the second curve. A dynamic system is created for the first curve, wherein the dynamic system provides a power source, giving the first curve a dynamic motion state. A target model is generated based on the first curve, the second curve, and the skeletal chain. In this method, the first curve has dynamic properties, the second curve has scalability, and either the first curve or the second curve has a locally stretchable property. The dynamic system provides a power source for the first curve, and the state of the second curve is controlled by the state of the first curve. The properties of both curves can be applied to the state of the skeletal chain controlled by the state of the second curve, resulting in a stretchable and scalable fluttering effect on the skeletal chain of the model. This method achieves a fluttering effect by combining dynamics with skeletal chain binding, eliminating the need for manual keyframe creation, reducing production costs, and improving the realism of the fluttering effect.

[0048] The following embodiments provide specific implementations of a skeletal chain to produce a scaling effect.

[0049] After the step of creating a second curve based on the first curve, the method further includes: connecting the second curve and the skeleton chain through a preset control handle node; wherein the control handle node is used to: control the state of the skeleton chain through the state of the second curve; connecting the second curve and the first curve through a preset fusion deformation node; wherein the fusion deformation node is used to: control the state of the second curve through the state of the first curve.

[0050] In this method, the association relationship between the second curve and the skeleton chain is established through the control handle node, and the association relationship between the second curve and the first curve is established through the fusion deformation node. As mentioned above, dynamics technology can be divided into forward dynamics and inverse dynamics. In one embodiment, inverse dynamics is used to construct motion curves in the Maya creation platform for explanation. In inverse kinematics (IK), an IK handle (IK Handle for short) and an IK solver are required for positioning and animation. The IK handle is like a line, which uses the handle node to pass through the specified starting joint of the skeleton chain to the end joint of the skeleton chain, providing a way for the entire skeleton chain to move. With the help of the IK solver, the IK handle can automatically calculate the rotation method of all joints in the skeleton chain.

[0051] The above-mentioned control handle node is an IK handle node. The second curve and the skeleton chain are connected through a pre-specified control handle node to achieve the purpose of binding the skeleton chain to the second curve, and the state of the skeleton chain is controlled by the state of the second curve. Blend deformation refers to the use of a series of target shape objects to make the basic object obtain a very smooth and high-precision deformation effect. The superposition effect of each individual deformation can be achieved by combining multiple groups of blend deformations. It can be understood here that through blend deformation, the state of the first curve can be superimposed on the state of the second curve, so that the state of the second curve has its own motion state and the property of transmitting the state of the first curve. Specifically, it is necessary to connect the second curve and the first curve through a preset and specified blend deformation node. The blend deformation node is used to control the state of the second curve through the state of the first curve. It should be noted that this blend deformation method can be implemented by writing a dynamic plug-in. The above-mentioned blend deformation node can specifically be a BlendShape node.

[0052] Furthermore, in response to the scaling operation on the second curve, the skeleton chain is controlled by the handle node to be scaled as a whole, and the scaled skeleton chain is displayed.

[0053] Specifically, when the user scales the second curve, the handle node can be used to control the overall scaling of the skeleton chain and display the scaled skeleton chain. It is worth noting that the scaling of the second curve does not affect the state of the first curve.

[0054] In this method, the handle node is used to bind the skeleton chain to the second curve. In response to the scaling operation on the second curve, the handle node can be used to control the overall scaling of the skeleton chain and display the state of the scaled skeleton chain.

[0055] The following embodiments provide specific implementations of the dynamic effect of local stretching of a skeletal chain.

[0056] In response to the first curve generating dynamic motion, the second curve is controlled by the blend deformation node to follow the motion state of the first curve to obtain the motion state of the second curve; the skeleton chain is controlled by the control handle node to follow the motion state of the second curve.

[0057] Specifically, the aforementioned dynamic motion can be physically simulated motion, such as fixed-axis or fixed-point rotation, planar or local stretching, regular or irregular twisting, etc. Dynamic motion is generated in response to the first curve, and the second curve is controlled by a blend deformation node to follow the motion state of the first curve, resulting in the motion state of the second curve. The skeletal chain is then controlled by a handle node to follow the motion state of the second curve. This can be understood as the ability to use blend deformations, using blend deformation nodes and handle nodes, to reflect the motion state output by the motion attributes of the first curve on the skeletal chain bound by the second curve.

[0058] Furthermore, in response to the stretching of a local curve in the target curve, the stretched length of the local curve is measured through a preset distance measurement node; wherein, the target curve is the first curve or the second curve with a local stretchable property; based on the stretched length of the local curve, the length of the local bone in the bone chain corresponding to the local curve is adjusted.

[0059] The distance measurement node is a tool used in 3D authoring platforms to measure distances. For example, in Maya, this could be the DisconnectAttr node. When the target curve is a second curve, in response to a stretching of a local curve within the second curve, the pre-specified DisconnectAttr node is used to measure the stretched length of the local curve. Here, the stretched length refers to the stretched length along the skeletal chain.

[0060] In one specific method, a first node and a second node are determined from a target curve; in response to a movement operation acting on the second node in the target curve, a local curve between the first node and the second node is stretched to determine a final position of the second node; and a curve distance between the final positions of the first node and the second node is measured using a distance measurement node to obtain a length of the local curve.

[0061] In one method, the position of the first node remains unchanged during the movement of the second node. At this time, the local curve between the first node and the second node is stretched by the movement of the second node; in another method, the first node and the second node are moved separately. At this time, the positions of the first node and the second node are changed. The local curve between the first node and the second node is stretched by the movement of the first node and the second node.

[0062] The first node and the second node are different control nodes on the target curve, and the first node is determined from the target curve; in response to a movement operation on the second node in the target curve, the local curve between the first node and the second node is stretched to determine the final position of the second node; the curve distance between the final positions of the first node and the second node measured by the distance measurement node is the length of the local curve.

[0063] Furthermore, according to the stretched length of the local curve, the length of the local bone in the skeleton chain corresponding to the local curve is adjusted.

[0064] In one method, a local bone in a bone chain corresponding to a local curve is determined; the number of bone units in the local bone and the initial length of each bone unit in the local bone are obtained; the first length of each bone unit in the local bone is determined based on the stretched length of the local curve and the number of bone units in the local bone; and each bone unit in the local bone is controlled to stretch from the initial length to the first length.

[0065] The above-mentioned skeletal unit contains one bone, and the first length can be understood as the change in value of each skeletal unit stretched along the direction of the skeletal chain. In one embodiment, the stretched length of the local curve is 10 units, and there are 5 skeletal units in the corresponding local skeleton. Then the distance of each skeletal unit is 2 units (i.e., the average value). The distance of each skeletal unit is divided by 2 (here, the value divided by 2 is the value of the skeletal unit length obtained). Therefore, the default value of the stretching of the skeleton chain for the bone is 1 unit. At this time, the first length in this embodiment is 1 unit. Finally, each skeletal unit in the local skeleton is controlled to stretch from the initial length to the first length.

[0066] In this method, the first curve is fused with the second curve bound to the skeleton chain using a fusion deformation node, and the stretching length is accurately measured using a distance measurement node. The distance measurement node is used to average the stretching length of the created skeleton units. The mathematical principle of averaging can be used to calculate the stretching length of each skeleton unit, thereby stretching the skeleton chain. It is worth noting that the scaling effect of the skeleton chain does not affect the local stretching dynamics effect of the skeleton chain. Therefore, the skeleton chain has both traditional binding and stretchable and scalable motion effects, avoiding the need for manually produced animation effects and making production more convenient and efficient.

[0067] The following embodiment takes hair as an example of a target model to provide a specific implementation method for creating a dynamic system for the first curve.

[0068] Create a hair system and a follicle node; connect the first curve to the hair system through the follicle node.

[0069] The hair system is a system that can create filamentary objects and simulate their motion. It generally consists of components such as the Hair System shape node and the Dynamic Solver node. The hair system is suitable for simulating relatively long, thin, linear objects, including hair, beaded curtains, and fur effects. The follicle node is a structural node that directly controls the dynamic state of the hair and the control of individual hair curves. Here, the hair system acts as a power source, outputting dynamic parameters. The follicle node is primarily used to connect the hair system and the primary curve to transfer dynamic parameters.

[0070] Among them, the steps of creating a hair system specifically include: creating a hair system shape node and a dynamic solver node in the hair system; associating the first time parameter in the hair system shape node and the second time parameter in the dynamic solver node with the time parameters of the time axis respectively; associating the initial state parameters of the hair system shape node with the input parameters of the dynamic solver node; associating the output parameters of the dynamic solver node with the update state parameters of the hair system shape node; associating the first start frame parameter of the dynamic solver node with the second start frame parameter of the hair system shape node.

[0071] The first start frame parameter may include the position of the dynamics solver's start frame, which can also be understood as the position of the first frame on the timeline; the start frame may also be referred to as the starting frame. Similarly, the second start frame parameter may include the position of the hair system shape node's start frame. The aforementioned associating the first start frame parameter of the dynamics solver node with the second start frame parameter of the hair system shape node can specifically achieve setting the start frame of the dynamics solver node and the start frame of the hair system shape node to the same frame or to mutually associated frames.

[0072] The above-mentioned hair system shape node can be understood as the master controller of the hair system, and most of the hair system parameters are controlled by this node. This node can output parameters such as time, initial state, update state, and hair shape; the dynamics solver node uses the dynamics solver to interactively solve dynamics-related nodes (such as objects or characters in the scene), giving characters or scene props richer dynamic performance; the time parameter refers to the time corresponding to each node, and the change in time can drive the change in dynamics. In a specific implementation method, the Mel language can be used to write a dynamics plug-in on the Maya platform. The above steps can be implemented in the following way:

[0073] 1) By calling the Time node, use the Time node's OutTime parameter (i.e., the time parameter of the time axis) to link the CurrentTime parameter (i.e., the first time parameter) of the HiarSystemShape node (hair system shape node) and the CurrentTime parameter (i.e., the second time parameter) of the Nuclues node (dynamic solver node). By connecting the time axis time to the first and second time dynamics, the time axis movement will produce a dynamic effect.

[0074] 2) Use the CurrentState parameter (initial state parameter) of the HairSystemShape node to connect the InPutActive[0] parameter and the InputActiveStart[1] parameter (the input parameters mentioned above) of the Nuclues node. This connects the initial state of the hair to the start of the movement so that the solver can work.

[0075] 3) Use the OutPutObjects[0] parameter of the Nuclues node (the output parameter mentioned above) to connect the NextState parameter of the HairSystemShape node (the update state parameter mentioned above). This allows the solver object to control the dynamics of the hair.

[0076] 4) Link the StartFrame parameter of the Nuclues node (the first start frame parameter) to the StateFrame parameter of the HairSystemShape node (the second start frame parameter). This will control the start frame of the hair using the solver's start frame. This will apply the solver's effects to the hair system.

[0077] Furthermore, the step of connecting the first curve and the hair system through the follicle node includes: associating the output hair parameters of the hair system shape node in the hair system with the current position parameters in the follicle node; associating the output hair parameters in the follicle node with the input hair parameters of the hair system shape node in the hair system; associating the world matrix parameters of the initial state of the first curve with the initial position matrix parameters in the follicle node; and associating the output curve parameters in the follicle node with the creation parameters of the first curve.

[0078] In a specific implementation, the dynamics plug-in is written in Mel language on the Maya platform. The above steps can be implemented as follows:

[0079] 1) Connect the OutPutHair parameter (the output hair parameter) of the HairSystemShape node to the CurrentPosition parameter (the current position parameter) of the FollicleShape node (the follicle node). This connects the hair output of the hair system shape to the current position of the follicle shape. This will control the follicles of the hair system, allowing you to control the curve's flow using the hair system's parameters.

[0080] 2) Connect the OutHair parameter of the FollicleShape node (the output hair parameter) to the InPutHair parameter of the HairSystemShape node (the input hair parameter). Connect the hair output of the follicle shape to the hair input of the hair system shape. This allows you to loop through the follicle positions, process them in the hair system, and then generate the curve.

[0081] The output curve parameters in the follicle node are associated with the creation parameters of the first curve, which can be divided into the following two sub-steps:

[0082] a) Connect the Local parameter of the CurveBaseShape node (the root curve shape node) to the StartPosition parameter of the FollicleShape node. This connects the current position of the root curve shape node to the start position of the follicle. The root curve shape node is a copy of the first curve, allowing you to restore the original state of the first curve after the animation preview is complete.

[0083] b) Connect the WorldMatrix[0] parameter of CurveBase (the initial matrix parameter) to the StartPositionMatrix parameter of the FollicleShape node (the initial position matrix parameter). Connect the world matrix of the root curve (the initial state of the first curve) to the start position matrix of the hair follicle. This way, every time you return to the initial frame, the first curve will return to its initial state.

[0084] The output curve parameters in the follicle node can be associated with the creation parameters of the first curve through:

[0085] Connect the FollicleShape node's OutCurve parameter (the output curve parameter) to the Curve node's Create parameter (the creation parameter). Connect the follicle shape's output curve to the first curve's creation parameter. This completes the entire system.

[0086] The establishment of this dynamics system creates a dynamic source for the first curve created. The timeline's motion drives the solver, which in turn drives the hair system, which in turn drives the follicle nodes. The follicle nodes control the curve's motion. This, combined with the skeletal rigging, completes the dynamic rigging of the skeleton. When returning to the initial frame, the curve is returned to its initial state based on the root curve's shape. This completes the entire system, imbuing the skeletal chain with vitality and enabling subjective movement.

[0087] It is worth noting that due to the integration of bone binding and dynamic solution, the skeleton can solve the motion state by itself. Compared with conventional binding, the dynamic effect is more realistic and takes up less computing resources, which alleviates the problem of large amount of calculation and slow speed in special effects animation solution and improves processing efficiency.

[0088] Furthermore, a controller needs to be created within the dynamics system to control the skeleton and produce dynamic effects. Specifically, a controller is created and the follicle nodes in the dynamics system are set within the controller. The controller is then controlled to follow the motion of the first model, thereby controlling the first curve through the follicle nodes to produce dynamic motion, and the motion of the skeleton chain is then controlled through the motion of the first curve.

[0089] The first model refers to the images of various people and objects that can interact in a virtual scene, or movable objects in the virtual scene. The movable objects can be virtual people, virtual animals, cartoon characters, etc., or they can be body parts of people or animals. The follicle nodes in the dynamic system are set in the controller; the controller can be controlled to follow the movement of the first model. The follicle nodes in the controller control the first curve to generate a dynamic motion state, and the motion state of the skeletal chain is then controlled by the motion state of the first curve.

[0090] Alternatively, the controller can follow the curvature of the first curve in real time. This can be achieved by using the Maya pointOnCurveInfo node to fix the controller to the first curve. This allows the animator to modify the controller's state after the solution is completed, improving processing speed.

[0091] The above model generation method solves the problems of skeleton chains not being able to float on their own and hair stretching by creating dynamic skeleton chain bindings, allowing the skeleton to automatically solve the motion state, taking up fewer resources while making the dynamic effects more realistic, effectively improving the production efficiency of special effects animations, and making production more convenient and efficient.

[0092] Next, a model display control method disclosed in an embodiment of the present invention is described in detail. Figure 2 As shown, the method includes the following steps:

[0093] Step S202, in response to the movement of the first model, controlling the first curve in the target model to generate dynamic motion through the dynamic system of the target model; wherein the target model is connected to the first model through a controller in the dynamic system;

[0094] In response to the movement of the first model in the virtual scene, the dynamic system generated in the above method controls the first curve in the target model to produce dynamic motion. The target model is connected to the first model via a controller in the dynamic system, so that the target model can follow the movement of the first model. The target model includes the first curve, the second curve, and a skeleton chain.

[0095] Step S204, obtaining the motion state of the first curve, and controlling the motion state of the second curve according to the motion state of the first curve;

[0096] Obtain the motion state of the first curve. Because the first curve has dynamic properties and local stretchability, its motion state can be determined by the velocity, direction, or local stretch parameters output by the dynamic system. Furthermore, through fusion deformation, the motion state of the first curve controls the motion state of the second curve.

[0097] Step S206: Control the motion state of the skeleton chain through the motion state of the second curve, so that the target model generates dynamic motion.

[0098] As mentioned above, the second curve, as the binding curve of the skeleton chain, can control the state of the skeleton chain through the state of the second curve. That is, the motion state transmitted to the second curve by the first curve and the attribute state of the second curve can both be reflected on the skeleton chain of the target model, thereby making the target model produce a floating dynamic effect.

[0099] In this step, the target model has richer dynamic performance through dynamics and bone chain binding, and realistic fluttering effects can be quickly achieved by adjusting parameters, greatly improving the animation effect and production efficiency.

[0100] The above-mentioned model display control method with a floating effect, in response to the movement of the first model, controls the first curve in the target model through the dynamic system of the target model to produce dynamic motion; wherein, the target model is connected to the first model through a controller in the dynamic system; the target model includes a first curve, a second curve and a skeleton chain; the motion state of the first curve is obtained, and the motion state of the second curve is controlled by the motion state of the first curve; the motion state of the skeleton chain is controlled by the motion state of the second curve, so that the target model produces dynamic motion. In this method, in response to the movement of the first model, the first curve is controlled by the dynamic system of the target model to produce dynamic motion, and the motion state of the second curve is controlled by the motion state of the first curve, thereby controlling the motion state of the skeleton chain of the target model, so that the target model follows the first model to produce a floating dynamic effect. This method cleverly combines the dynamic effect and the binding system, so that the target model follows the first model to produce dynamic motion. The target model has richer dynamic performance, and realistic floating effects can be quickly achieved by adjusting parameters, greatly improving animation effects and production efficiency.

[0101] Corresponding to the above-mentioned model generation method embodiment, see Figure 3 A schematic diagram of a model generation device is shown, the device comprising the following steps:

[0102] A first creation module 302 is used to create a first curve and create a skeleton chain based on the first curve;

[0103] The second creation module 304 is configured to create a second curve based on the first curve; wherein the first curve has a dynamic property; the second curve has a scalable property; the first curve or the second curve has a locally stretchable property; the first curve is configured to control the state of the second curve by the state of the first curve; and the second curve is configured to control the state of the skeletal chain by the state of the second curve;

[0104] The third creation module 306 is configured to create a dynamic system for the first curve; wherein the dynamic system is configured to provide a power source so that the first curve has a dynamic motion state;

[0105] The generating module 308 is configured to generate a target model based on the first curve, the second curve and the skeleton chain.

[0106] The model generation device creates a first curve, creates a skeletal chain based on the first curve, and creates a second curve based on the first curve. The first curve has dynamic properties, the second curve has scalability, and either the first curve or the second curve has a locally stretchable property. The first curve is used to control the state of the second curve through the state of the first curve, and the second curve is used to control the state of the skeletal chain through the state of the second curve. A dynamic system is created for the first curve, wherein the dynamic system provides a power source to impart a dynamic motion state to the first curve. A target model is generated based on the first curve, the second curve, and the skeletal chain. In this method, the first curve has dynamic properties, the second curve has scalability, and either the first curve or the second curve has a locally stretchable property. The dynamic system provides a power source for the first curve, and the state of the second curve is controlled by the state of the first curve. The properties of the two curves can be applied to the state of the skeletal chain controlled by the state of the second curve, thereby imparting a stretchable and scalable fluttering effect to the skeletal chain of the model. This method achieves a fluttering effect by combining dynamics with skeletal chain binding, eliminating the need for manual keyframe creation, reducing production costs, and improving the realism of the fluttering effect.

[0107] The above-mentioned device also includes a first connection module, which is used to connect the second curve and the skeleton chain through a preset control handle node; wherein the control handle node is used to: control the state of the skeleton chain through the state of the second curve; connect the second curve and the first curve through a preset fusion deformation node; wherein the fusion deformation node is used to: control the state of the second curve through the state of the first curve.

[0108] The above-mentioned device also includes a scaling control module, which is used to respond to the scaling operation on the second curve, control the skeleton chain to perform overall scaling through the handle node, and display the scaled skeleton chain.

[0109] The above-mentioned device also includes a first motion control module, which is used to generate dynamic motion in response to the first curve, control the second curve to follow the motion state of the first curve through the fusion deformation node, and obtain the motion state of the second curve; and control the skeleton chain to follow the motion state of the second curve through the control handle node.

[0110] The above-mentioned device also includes a length measurement module for measuring the stretched length of the local curve in response to the stretching of the local curve in the target curve through a preset distance measurement node; wherein the target curve is the first curve or the second curve with a local stretchable property; the above-mentioned device also includes a length adjustment module for adjusting the length of the local bone in the bone chain corresponding to the local curve based on the stretched length of the local curve.

[0111] The above-mentioned length measurement module is also used to determine the first node from the target curve; in response to the movement operation of the second node in the target curve, the local curve between the first node and the second node is stretched to determine the final position of the second node; wherein, during the movement of the second node, the position of the first node remains unchanged; and the curve distance between the final positions of the first node and the second node is measured by the distance measurement node to obtain the length of the local curve.

[0112] The above-mentioned length adjustment module is also used to determine the local bones in the bone chain corresponding to the local curve; obtain the number of bone units in the local bones and the initial length of each bone unit in the local bones; determine the first length of each bone unit in the local bones based on the stretched length of the local curve and the number of bone units in the local bones; and control each bone unit in the local bones to stretch from the initial length to the first length.

[0113] The third creation module is further used to create a hair system and a follicle node; and connect the first curve and the hair system via the follicle node.

[0114] The above-mentioned third creation module is also used to create a hair system shape node and a dynamic solver node in the hair system; associate the first time parameter in the hair system shape node and the second time parameter in the dynamic solver node with the time parameters of the time axis respectively; associate the initial state parameters of the hair system shape node with the input parameters of the dynamic solver node; associate the output parameters of the dynamic solver node with the update state parameters of the hair system shape node; and associate the first start frame parameter of the dynamic solver node with the second start frame parameter of the hair system shape node.

[0115] The above-mentioned third creation module is also used to associate the output hair parameters of the hair system shape node in the hair system with the current position parameters in the follicle node; associate the output hair parameters in the follicle node with the input hair parameters of the hair system shape node in the hair system; associate the world matrix parameters of the initial state of the first curve with the initial position matrix parameters in the follicle node; and associate the output curve parameters in the follicle node with the creation parameters of the first curve.

[0116] The above-mentioned device also includes a second motion control module, which is used to create a controller and set the follicle node in the dynamic system in the controller; control the controller to move following the movement of the first model, so as to control the first curve to generate a dynamic motion state through the follicle node, and control the motion state of the skeleton chain through the motion state of the first curve.

[0117] The above-mentioned device also includes: a display control module, which is used to: respond to the movement of the first model, control the first curve in the target model to generate dynamic motion through the dynamic system of the target model; wherein the target model is connected to the first model through a controller in the dynamic system; obtain the motion state of the first curve, and control the motion state of the second curve through the motion state of the first curve; and control the motion state of the skeleton chain through the motion state of the second curve to make the target model generate dynamic motion.

[0118] This embodiment further provides an electronic device, including a processor and a memory, wherein the memory stores machine-executable instructions that can be executed by the processor, and the processor executes the machine-executable instructions to implement the above-mentioned model generation method. The electronic device can be a server or a terminal device.

[0119] See also Figure 4 As shown, the electronic device includes a processor 100 and a memory 101. The memory 101 stores machine executable instructions that can be executed by the processor 100. The processor 100 executes the machine executable instructions to implement the above-mentioned model generation method.

[0120] Furthermore, Figure 4 The electronic device shown further includes a bus 102 and a communication interface 103 , and the processor 100 , the communication interface 103 and the memory 101 are connected via the bus 102 .

[0121] The memory 101 may include a high-speed random access memory (RAM), and may also include a non-volatile memory, such as at least one disk storage. The communication connection between the system network element and at least one other network element is achieved through at least one communication interface 103 (which may be wired or wireless), and the Internet, wide area network, local area network, metropolitan area network, etc. may be used. The bus 102 may be an ISA bus, a PCI bus, or an EISA bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 4 Only one bidirectional arrow is used in the diagram, but this does not mean that there is only one bus or one type of bus.

[0122] The processor 100 may be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method can be completed by hardware integrated logic circuits in the processor 100 or software instructions. The above processor 100 may be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it may also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the various methods, steps, and logic block diagrams disclosed in the embodiments of the present invention. The general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in conjunction with the embodiments of the present invention can be directly implemented and executed by a hardware decoding processor, or by a combination of hardware and software modules in the decoding processor. The software module can be located in a storage medium well-known in the art, such as a random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, or register. The storage medium is located in the memory 101. The processor 100 reads the information in the memory 101 and, in conjunction with its hardware, completes the steps of the method of the aforementioned embodiment.

[0123] This embodiment further provides a machine-readable storage medium, which stores machine-executable instructions. When the machine-executable instructions are called and executed by a processor, the machine-executable instructions prompt the processor to implement the above-mentioned model generation method.

[0124] The computer program products of the model generation method, device, electronic device and storage medium provided in the embodiments of the present invention include a computer-readable storage medium storing program code. The instructions included in the program code can be used to execute the methods described in the previous method embodiments. For specific implementation, please refer to the method embodiments and will not be repeated here.

[0125] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described systems and devices can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0126] In addition, in the description of the embodiments of the present invention, unless otherwise expressly specified or limited, the terms "mounted," "connected," and "connected" should be understood in a broad sense. For example, they may refer to fixed connections, detachable connections, or integral connections; they may refer to mechanical connections or electrical connections; they may refer to direct connections or indirect connections through an intermediate medium; and they may refer to internal communication between two components. Those skilled in the art will understand the specific meanings of the above terms in the present invention based on the specific circumstances.

[0127] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0128] In the description of the present invention, it should be noted that the terms "center," "upper," "lower," "left," "right," "vertical," "horizontal," "inner," and "outer," etc., indicating orientations or positional relationships, are based on the orientations or positional relationships shown in the accompanying drawings and are intended solely to facilitate and simplify the description of the present invention. They are not intended to indicate or imply that the devices or components referred to must have, be constructed, or operate in a specific orientation, and therefore should not be construed as limitations on the present invention. Furthermore, the terms "first," "second," and "third" are used for descriptive purposes only and should not be construed as indicating or implying relative importance.

[0129] Finally, it should be noted that the above embodiments are only specific implementation methods of the present invention, which are used to illustrate the technical solutions of the present invention, rather than to limit them. The scope of protection of the present invention is not limited thereto. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that any person skilled in the art can modify or easily conceive of changes to the technical solutions described in the above embodiments within the technical scope disclosed by the present invention, or replace some of the technical features therein with equivalents. Such modifications, changes or replacements do not deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should be included in the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be based on the scope of protection of the claims.

Claims

1. A model generation method, characterized in that: The method comprises: Creating a first curve, and creating a skeleton chain based on the first curve; Creating a second curve based on the first curve, connecting the second curve and the skeleton chain via a preset handle node; wherein the first curve has a dynamic property; the second curve has a scalable property; the first curve or the second curve has a locally stretchable property; the first curve is used to control the state of the second curve through the state of the first curve; and the second curve is used to control the state of the skeleton chain through the state of the second curve; Creating a dynamic system for the first curve; wherein the dynamic system is used to provide a power source so that the first curve has a dynamic motion state; A target model is generated based on the first curve, the second curve, and the skeletal chain.

2. The method according to claim 1, characterized in that After the step of creating a second curve based on the first curve, the method further includes: The handle node is used to: control the state of the skeleton chain according to the state of the second curve; The second curve and the first curve are connected by a preset blendShape node; wherein the blendShape node is used to control a state of the second curve according to a state of the first curve.

3. The method according to claim 2, characterized in that The method further comprises: In response to the scaling operation on the second curve, the skeletal chain is controlled to be scaled as a whole through the handle node, and the scaled skeletal chain is displayed.

4. The method according to claim 2, characterized in that The method further comprises: In response to the first curve generating dynamic motion, controlling the second curve to follow the motion state of the first curve through the blendShape node to obtain the motion state of the second curve; The skeletal chain is controlled by the handle node to move following the motion state of the second curve.

5. The method according to claim 1, wherein After the step of creating a second curve based on the first curve, the method further includes: In response to a local curve in a target curve being stretched, measuring the stretched length of the local curve using a preset distance measurement node; wherein the target curve is the first curve or the second curve having a locally stretchable property; Based on the stretched length of the local curve, the length of the local bone in the skeleton chain corresponding to the local curve is adjusted.

6. The method according to claim 5, characterized in that In response to a local curve in a target curve being stretched, the step of measuring the stretched length of the local curve using a preset distance measurement node comprises: determining a first node and a second node from the target curve; In response to the movement operation applied to the second node, stretching the local curve between the first node and the second node to determine a final position of the second node; The curve distance between the final positions of the first node and the second node is measured by the distance measurement node to obtain the length of the local curve.

7. The method according to claim 5, characterized in that The step of adjusting the length of a local bone in the skeleton chain corresponding to the local curve based on the stretched length of the local curve includes: Determine a local bone in the skeleton chain corresponding to the local curve; Obtaining the number of bone units in the local skeleton and the initial length of each bone unit in the local skeleton; Determine a first length of each bone unit in the local skeleton based on the stretched length of the local curve and the number of bone units in the local skeleton; Control each bone unit in the local skeleton to stretch from an initial length to the first length.

8. The method according to claim 1, characterized in that The step of creating a dynamic system for the first curve comprises: Create hair system and follicle nodes; The first curve and the hair system are connected through the follicle node.

9. The method according to claim 8, characterized in that The steps to create a hair system include: Create the hair system shape node and dynamic solver node in the hair system; Associating the first time parameter in the hair system shape node and the second time parameter in the dynamics solver node with the time parameters of the time axis respectively; Associating initial state parameters of the hair system shape node with input parameters of the dynamics solver node; Associating output parameters of the dynamics solver node with update state parameters of the hair system shape node; A first start frame parameter of the dynamics solver node is linked to a second start frame parameter of the hair system shape node.

10. The method according to claim 8, characterized in that The step of connecting the first curve and the hair system through the hair follicle node comprises: Associating output hair parameters of a hair system shape node in the hair system with current position parameters in the hair follicle node; Associating output hair parameters in the follicle node with input hair parameters of a hair system shape node in the hair system; Associating the world matrix parameters of the initial state of the first curve with the initial position matrix parameters in the hair follicle node; The output curve parameters in the follicle node are associated with the creation parameters of the first curve.

11. The method according to claim 1, wherein After the step of creating a dynamic system for the first curve, the method further comprises: Creating a controller, and setting the hair follicle nodes in the dynamic system in the controller; The controller is controlled to move following the movement of the first model, so as to control the first curve to generate a dynamic motion state through the follicle node, and the motion state of the skeleton chain is controlled through the motion state of the first curve.

12. The method according to claim 1, characterized in that After the step of generating a target model based on the first curve, the second curve, and the skeletal chain, the method further includes: In response to the movement of the first model, controlling the first curve in the target model to generate dynamic motion through the dynamic system of the target model; wherein the target model is connected to the first model through a controller in the dynamic system; acquiring a motion state of the first curve, and controlling a motion state of the second curve according to the motion state of the first curve; The motion state of the skeletal chain is controlled by the motion state of the second curve, so that the target model generates dynamic motion.

13. A model generation device, characterized in that: The device comprises: A first creation module, configured to create a first curve and create a skeleton chain based on the first curve; a second creation module, configured to create a second curve based on the first curve, and connect the second curve and the skeletal chain via a preset handle node; wherein the first curve has a dynamic property; the second curve has a scalable property; the first curve or the second curve has a locally stretchable property; the first curve is used to control the state of the second curve through the state of the first curve; and the second curve is used to control the state of the skeletal chain through the state of the second curve; a third creation module, configured to create a dynamic system for the first curve; wherein the dynamic system is configured to provide a power source so that the first curve has a dynamic motion state; A generation module is used to generate a target model based on the first curve, the second curve and the skeleton chain.

14. An electronic device, characterized in that: The system comprises a processor and a memory, wherein the memory stores machine-executable instructions that can be executed by the processor, and the processor executes the machine-executable instructions to implement the model generation method according to any one of claims 1 to 12.

15. A machine-readable storage medium, characterized in that The machine-readable storage medium stores machine-executable instructions. When the machine-executable instructions are called and executed by a processor, the machine-executable instructions prompt the processor to implement the model generation method according to any one of claims 1 to 12.

Citation Information

Patent Citations

  • Method and device for simulating body motions of animation model

    CN105894555A

  • Animation data processing method and device

    CN112184863A