A generation method for processing a 3D model into a 3D binding file

By establishing a binding template library and three-dimensional software processing, the generation process of the three-dimensional binding file is simplified, the cumbersome problems of traditional methods are solved, the operation difficulty and re-repair cost are reduced, and the production standardization and precision are improved.

CN114612638BActive Publication Date: 2025-07-11SUZHOU JUVENILE AMBITION ANIMATION CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210294906.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-03-24
Publication Date
2025-07-11
Estimated Expiration
2042-03-24

AI Technical Summary

Technical Problem

The traditional three-dimensional binding processing process is cumbersome, and technicians need to make different three-dimensional binding files under different project frameworks, which is expensive to repair and consumes a lot of manpower.

Method used

Create a binding template library, create a new scene through three-dimensional software, import a model, retrieve the binding template file, adjust the template bone coordinates, generate a three-dimensional binding file, and import skin and mixed repair data to clean up useless information.

Benefits of technology

The three-dimensional model processing process is simplified, the operation difficulty and rework cost are reduced, and the production standardization and precision are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114612638B_ABST
    Figure CN114612638B_ABST
Patent Text Reader

Abstract

The present invention discloses a generation method for processing a 3D model into a 3D binding file. By using 3D software to create a blank 3D scene and import the 3D model; according to the shape of the 3D model in 3D space, retrieve the binding template file from a pre-established binding template library, adjust the 3D coordinates of the template bones in the binding template file, and match the template bones to the corresponding positions inside the 3D model; modify the shape data of the controller so that the shape of the controller corresponds to the 3D model; modify the binding setting parameters to meet the project requirements; automatically generate the 3D binding file of the 3D model according to the binding template file; import the skinning and blend shape data, and connect the control system of the 3D binding file to the 3D model. The present invention greatly simplifies the industrial process of processing a 3D model into a 3D binding, reduces the operation difficulty of technicians in performing this process, reduces the time cost of rework, and at the same time improves the standardization, quality and fineness of the production results.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of three-dimensional model processing, and particularly to a method for generating a three-dimensional binding file by processing a three-dimensional model. Background Art

[0002] In the three-dimensional production process, including three-dimensional animation and three-dimensional games, processing a three-dimensional model, especially a character model, into a three-dimensional binding file is an essential intermediate link. A three-dimensional binding file is a three-dimensional model file with controllers. Through the controllers in the three-dimensional binding file, animators can manipulate the three-dimensional model like a puppet, thus creating interesting performances. The traditional three-dimensional binding processing flow method is extremely cumbersome. Technicians need to create different three-dimensional binding files according to different models under different project frameworks, and the rework cost is very high, consuming a large amount of manpower. Summary of the Invention

[0003] To overcome the disadvantages in the above background art that the traditional three-dimensional binding processing flow method is extremely cumbersome, technicians need to create different three-dimensional binding files according to different models under different project frameworks, and the rework cost is very high, consuming a large amount of manpower, the purpose of the present invention is to provide a method for generating a three-dimensional binding file by processing a three-dimensional model.

[0004] To achieve the above purpose, the technical solution adopted by the present invention is: a method for generating a three-dimensional binding file by processing a three-dimensional model, including the following steps:

[0005] S1: Establish a binding template library in advance;

[0006] S2: Create a blank three-dimensional scene through three-dimensional software and import the three-dimensional model;

[0007] S3: According to the shape of the three-dimensional model in three-dimensional space, retrieve a binding template file from the binding template library, adjust the three-dimensional coordinates (X, Y, Z) of the template skeleton in the binding template file, and match the template skeleton to the corresponding position inside the three-dimensional model;

[0008] S4: Modify the shape data and binding setting parameters of the controller;

[0009] S5: Automatically generate a three-dimensional binding file of the three-dimensional model according to the binding template file;

[0010] S6: Import skinning and blend shape data, connect the control system of the three-dimensional binding file and the three-dimensional model, and clean up the useless information in the file.

[0011] In some possible implementation manners, the specific steps of establishing a binding template library in the S1 step are as follows:

[0012] S 10 : Construct a basic module that defines how to create a binding template, defines how to read a binding template, defines how to create a control system, and defines the connection rules with other binding modules;

[0013] S 11 : Derive any binding module corresponding to different parts or features of the 3D model through inheritance from the basic module, create all other binding modules through the basic module according to the inheritance transformation rules, and each said binding module defines how to create a template, defines how to identify a template, defines how to create a control system, and defines the connection rules with other binding modules.

[0014] In some possible implementation manners, in step S5, the binding file of the 3D model is automatically generated according to the binding template file, specifically:

[0015] S 51 : Import the 3D model and the 3D binding template file in the blank scene;

[0016] S 52 : Call the binding template library to identify all binding modules in the imported 3D binding template file;

[0017] S 53 : Generate a controller and template bones according to the control system established for each binding module in the binding template library and the binding setting parameters in the binding template file;

[0018] S 54 : Complete the mutual connection between binding modules according to the connection rules between each binding module in the binding template library and other binding modules.

[0019] In some possible implementation manners, binding template files for common 3D characters are predefined in the binding template library, and the binding template file includes at least one binding module, and the binding template file is modified by adding or deleting a certain binding module.

[0020] In some possible implementation manners, the binding template file further includes template bones, a controller, and binding setting parameters. The controller is composed of 3D curves, and its shape data is a sequence of 3D coordinates (x, y, z). By rotating or scaling the shape of the controller, the shape data of the controller is changed; the binding setting parameters define the number of template bones bound in the 3D binding file; the 3D coordinate information (X, Y, Z) of the template bones defines the spatial position of the bones in the 3D binding file.

[0021] In some possible implementation manners, the control system is used to execute the control logic between the controller and the template bones.

[0022] In some possible embodiments, the connection rule defines the constraint relationship between the binding modules.

[0023] In some possible embodiments, the skin and blend shape data are pre-produced by 3D software. The skin data is a two-dimensional array, which is composed of the weight sequences of all joints on each vertex of the 3D model; the blend shape data contains a number of key values, and each key value corresponds to the three-dimensional coordinate sequence of the vertex after the 3D model is deformed.

[0024] A computer-readable storage medium stores a computer program thereon. When the computer program is executed by a processor, the steps of a generation method for processing a 3D model into a 3D binding file according to the present invention are implemented.

[0025] The beneficial effects of the present invention are as follows: By the present invention, the industrial process of processing a 3D model into a 3D binding is greatly simplified, the operation difficulty of technicians in executing this process is reduced, the time cost of rework is reduced, and at the same time, the standardization, quality and fineness of the production results are improved. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Figure 1 It is a schematic flow chart of the steps of a generation method for processing a 3D model into a 3D binding file according to an embodiment of the present application;

[0027] Figure 2 It is a schematic diagram of a binding template matching a 3D model according to an embodiment of the present application;

[0028] Figure 3 It is a programming diagram for defining a basic module according to an embodiment of the present application;

[0029] Figure 4 It is a programming diagram for defining a hand binding module according to an embodiment of the present application;

[0030] Figure 5 It is a schematic flow chart of the specific steps for pre-establishing a binding template library according to an embodiment of the present application;

[0031] Figure 6 It is a schematic flow chart of the specific steps for automatically generating a 3D binding file of the 3D model according to the binding template file according to an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0032] The following elaborates on the preferred embodiments of the present invention in conjunction with the accompanying drawings, so that the advantages and features of the present invention can be more easily understood by those skilled in the art, thereby making a clearer and more definite definition of the protection scope of the present invention.

[0033] A generation method for processing a 3D model into a 3D binding file, asFigure 1 As shown in the figure, it includes the following steps:

[0034] S1: Pre - establish a binding template library; predefined binding template files for common 3D characters are stored in the binding template library. Each binding template file includes at least one binding module, and the binding template file can be modified by adding or deleting a certain binding module. For example, a module combination of a human character can be directly called. If some projects do not require binding processing of expressions, then the expression module in the template file can be deleted. As Figure 5 shown in the figure, the specific steps are as follows:

[0035] S 10 : As Figure 2 and Figure 3 shown in the figure, use the method of defining a "class" in the object - oriented programming method of Python to construct a basic module. The basic module defines how to create a binding template, defines how to read a binding template, defines how to create a control system, and defines the connection rules with other binding modules;

[0036] S 11 : Any binding module corresponding to different parts or features of the 3D model can be inherited and transformed through the basic module. As Figure 4 shown in the figure, for example, use the inheritance transformation rule in the object - oriented programming method of Python through the basic module to create a hand binding module for the corresponding 3D model; according to the above "inheritance transformation rule in the object - oriented programming method of Python", create all other binding modules through the basic module. Each binding module defines how to create a binding template, defines how to identify a binding template, defines how to create a control system, and defines the connection rules with other binding modules.

[0037] The binding template file also includes template bones, controllers, and binding setting parameters. The controller is composed of 3D curves, and its shape data is a sequence of 3D coordinates (x, y, z). By rotating or scaling the shape of the controller, the shape data of the controller is changed; the binding setting parameters define the number of template bones bound in the 3D binding file. The binding setting parameters can be integer, boolean, or string data; the 3D coordinate information (X, Y, Z) of the template bones defines the spatial position of the bones in the 3D binding file.

[0038] In Autodesk Maya, the built-in function library maya.cmds can be called using the Mel or Python language to execute all basic operation commands. For example, the cmds.joint() command can be used to generate a bone in a 3D scene. In Blender, the Blender built-in Blender Python API can also be used to achieve similar functions.

[0039] The control system is used to execute the control logic between the controller and the template bone. The connection rule defines the constraint relationship between the binding modules.

[0040] S2: Select a 3D software development platform, such as Autodesk Maya, Blender, and Houdini, etc. These common 3D industrial software can generate planar images of 3D models in real time, support functions such as bone skinning and generating control logic, and provide open-source library functions or API interfaces to support developers to develop more functions. Create a blank 3D scene through the above 3D software and import the 3D model;

[0041] S3: According to the shape of the 3D model in 3D space, retrieve the binding template file from the binding template library, adjust the 3D coordinates (X, Y, Z) of the template bone in the binding template file, and match the template bone to the corresponding position inside the 3D model;

[0042] S4: Manually modify the shape data of the controller through the control handle built in the 3D software, so that the shape of the controller corresponds to the 3D model, making it visually friendly and convenient to select; modify the binding setting parameters to meet the project requirements (specific parameters such as the number of secondary joints, whether certain binding functions are implemented);

[0043] S5: Automatically generate the 3D binding file of the 3D model according to the binding template file, as Figure 6 shown. The specific steps are as follows:

[0044] S 51 : Import the 3D model and the 3D binding template file in the blank scene;

[0045] S 52 : Call the binding template library to identify all binding modules in the imported 3D binding template file;

[0046] S 53 : Generate a controller and a template bone according to the control system established for each binding module in the binding template library and the binding setting parameters in the binding template file;

[0047] S 54: Complete the mutual connection between the binding modules according to the connection rules between each binding module and other binding modules in the binding template library.

[0048] S6: Import the skin and blend shape data, connect the control system of the 3D binding file to the 3D model, and clean up the useless information in the file. The skin and blend shape data are pre-made through 3D software. In Autodesk Maya, users can use the weight brush tool and sculpting tool to create the skin data and blend shape data.

[0049] The skin data is a two-dimensional array, which consists of the weight sequence of all joints on each vertex of the 3D model; for example, if there are n points on the model and then m joints are skinned to the model. Then the weight parameters of each point are [w1, w2…wm], where w1 + w2 + … + wm = 1. The skin data of each model is [[w11, w12,..w1m], [w21, w22,..w2m], …[wn1, wn2, …wnm]]. In Autodesk Maya, you can use the MFnSkinCluster.getWeights() provided by the built-in python API to directly read this data, and then use the built-in function file.write() provided by python to write it into a third-party data file, for example, it can be saved as a.json file.

[0050] The blend shape data is a dictionary that contains several key-value pairs, and each of the key-value pairs corresponds to the 3D coordinate sequence of the vertices after the 3D model is deformed. For example, there is a key-value pair smile that defines the data of the character model after smiling. If the model has n points and the 3D coordinates of each point are (x, y, z), then the data of this key-value pair is {"smile": [[x1, y1, z1], [x2, y2, z2], …[xn, yn, zn]]}. In Autodesk Maya, users can use the getAttr() command in the maya.cmds library function to read this data, and then also use the built-in function file.write() provided by python to write it into a third-party data file, for example, it can be saved as a.json file. After establishing the binding control system, these data can be re-imported using the open() function provided by python, and then these data can be assigned to the model using the setAttr() command in the maya.cmds library function.

[0051] A computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the steps of a generation method for processing a 3D model into a 3D binding file according to the present invention.

[0052] The above embodiments are only for illustrating the technical concept and features of the present invention, and the purpose is to enable those who are familiar with this technology to understand the content of the present invention and implement it. It is not intended to limit the protection scope of the present invention. Any equivalent changes or modifications made according to the spirit and essence of the present invention should be covered within the protection scope of the present invention.

Claims

1. A generation method for processing a three-dimensional model into a three-dimensional binding file, characterized in that , including the following steps: S1: Pre - establish a binding template library; The specific steps for pre - establishing the binding template library are as follows: S 10 :Construct a basic module that defines how to create a binding template, defines how to read a binding template, defines how to create a control system, and defines the connection rules with other binding modules; S 11 : Any binding module that transforms and inherits different parts or features of the corresponding 3D model through the basic module; create all other binding modules through the basic module according to the rules of inheritance transformation, and each of the binding modules defines how to create a template, defines how to identify a template, defines how to create a control system, and defines the connection rules with other binding modules; S2: Create a blank 3D scene through 3D software and import 3D models; S3: According to the shape of the 3D model in 3D space, retrieve a binding template file from the binding template library, adjust the 3D coordinates (X, Y, Z) of the template bones in the binding template file, and match the template bones to the corresponding positions inside the 3D model; S4: Modify the shape data of the controller and modify the binding setting parameters; S5: Automatically generate a 3D binding file for the 3D model according to the binding template file; S6: Import skinning and blend - shape data, connect the control system of the 3D binding file and the 3D model, and clean up the useless information in the file.

2. The generation method of processing a 3D model into a 3D binding file according to claim 1, wherein: In step S5, automatically generating the binding file for the 3D model according to the binding template file is specifically: S 51 : Import a 3D model and a 3D binding template file in the blank scenario; S 52 : Call the binding template library to identify all binding modules in the imported 3D binding template file; S 53 : Generate a controller and a template skeleton based on the control systems established for each binding module in the binding template library and the binding setting parameters in the binding template file; S 54 : Complete the mutual connection between the binding modules according to the connection rules between each binding module and other binding modules in the binding template library.

3. A generation method for processing a 3D model into a 3D binding file according to claim 1, characterized in that: The binding template library pre - defines binding template files for common 3D characters. The binding template file includes at least one binding module, and the binding template file is modified by adding or deleting a certain binding module.

4. A method for generating a three-dimensional binding file by processing a three-dimensional model according to claim 1, characterized in that, The binding template file also includes template bones, a controller, and binding setting parameters. The controller is composed of 3D curves, and its shape data is a sequence of 3D coordinates (x, y, z). By rotating or scaling the shape of the controller, the shape data of the controller is changed; the binding setting parameters define the number of template bones bound in the 3D binding file; the 3D coordinate information (X, Y, Z) of the template bones defines the spatial positions of the bones in the 3D binding file.

5. A method for generating a three-dimensional binding file by processing a three-dimensional model according to claim 1, characterized in that: The control system is used to execute the control logic between the controller and the template bones.

6. A method for generating a three-dimensional binding file by processing a three-dimensional model according to claim 2, characterized in that: The connection rule defines the constraint relationship between binding modules.

7. A generation method for processing a 3D model into a 3D binding file according to claim 1, characterized in that: The skinning and blend - shape data are pre - made through 3D software. The skinning data is a two - dimensional array, and its composition is a sequence of weights of all joints on each vertex of the 3D model; the blend - shape data contains several key - value pairs, and each key - value pair corresponds to a sequence of 3D coordinates of the vertices after the 3D model is deformed.

8. A computer - readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, it implements the steps of the method for generating a 3D binding file by processing a 3D model according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Animation model role binding method and system based on Maya software

    CN107657650A

  • Three-dimensional human body model skeleton dynamic transfer binding method

    CN112541969A