CN117173380A - Multi-constraint three-dimensional grid model deformation method for skeleton-driven tetrahedron control grid - Google Patents
Multi-constraint three-dimensional grid model deformation method for skeleton-driven tetrahedron control grid Download PDFInfo
- Publication number
- CN117173380A CN117173380A CN202311147758.3A CN202311147758A CN117173380A CN 117173380 A CN117173380 A CN 117173380A CN 202311147758 A CN202311147758 A CN 202311147758A CN 117173380 A CN117173380 A CN 117173380A
- Authority
- CN
- China
- Prior art keywords
- model
- control grid
- tetrahedron
- constraint
- deformation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 210000000988 bone and bone Anatomy 0.000 claims abstract description 30
- 230000000694 effects Effects 0.000 claims abstract description 9
- 239000013598 vector Substances 0.000 claims description 15
- 230000008859 change Effects 0.000 claims description 13
- 239000011159 matrix material Substances 0.000 claims description 7
- 238000012937 correction Methods 0.000 claims description 6
- 238000013519 translation Methods 0.000 claims description 6
- 230000001131 transforming effect Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 4
- 230000009471 action Effects 0.000 claims description 3
- 238000009877 rendering Methods 0.000 claims description 3
- 230000003068 static effect Effects 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 3
- 238000005457 optimization Methods 0.000 description 6
- 238000013459 approach Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 235000001968 nicotinic acid Nutrition 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T90/00—Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
Landscapes
- Processing Or Creating Images (AREA)
Abstract
The application discloses a multi-constraint three-dimensional grid model deformation method of a skeleton-driven tetrahedron control grid, which comprises the following steps: embedding the three-dimensional character model into a group of sparse tetrahedron control grids, and establishing a position relation between the control grids and the model through tetrahedron coordinates to realize the indirect control of model deformation by controlling the control grids; adding constraint conditions to optimize deformation, and setting strong and weak constraint areas by controlling grids, and constraining the positions of the deformed vertexes by using the positions of the vertexes of the original model to realize rigid deformation of the model; generating a surrounding sphere according to the control grid vertexes, and limiting the range of vertex variation; tetrahedral volume constraint and stretching constraint are added in the control grid, so that the unchanged volume and the elasticity of the side length of the tetrahedral control grid are realized. Compared with the prior art, the method provided by the application avoids a large number of bone skin weight calculation, realizes the deformation of the bone manipulation control grid, and optimizes the model deformation effect.
Description
Technical Field
The application belongs to the technical fields of computer graphics and virtual reality, and particularly relates to a multi-constraint three-dimensional grid model deformation method of a skeleton-driven tetrahedron control grid.
Background
In recent years, research on deformation of three-dimensional models has been advanced significantly. Among them, geometric deformation algorithms include multi-resolution techniques, free deformation techniques, and differential coordinate techniques.
1. Multi-resolution techniques: the original grid is decomposed into a base grid and high-frequency details, and multi-resolution representation is achieved. By deforming the base grid first and then overlapping with high-frequency details, the original geometric characteristics of the model can be maintained. However, due to the high frequency detail separation process, detail distortion may occur in a large deformed region.
2. Free deformation technology: the original model is embedded in a space that is easy to handle and spatial deformation is used to obtain the final result. The method is convenient and practical, is suitable for deformation of a smooth model, but is difficult to maintain geometric details of an input model.
3. Differential coordinate technique: the deformation is regarded as an energy optimization problem, and the final deformation result is reconstructed by fitting the differential coordinates of the change by solving a linear equation set or nonlinear optimization. The most widely used of these are Laplacian coordinates, but most algorithms only consider face constraints, which can lead to unnatural results when deformed on a large scale. To prevent volume changes and local selfing phenomena, some methods extend the Laplacian operator from face to body.
In addition, the skeleton-driven grid deformation method is an important free deformation means. The deformation of the three-dimensional grid is analogized with the motion of a human body, and the grid is driven to deform by the motion of the framework through correlating points on the surface of the grid to the framework structure. The method is simple and visual to operate, is suitable for movement deformation application, and is widely applied to the fields of human body animation and games. Skeleton-driven deformation techniques can be categorized into bionics-based, physical-based, and geometric-based approaches, each featuring. However, the search for more intuitive, efficient skeleton-driven mesh deformation methods remains an important direction of investigation.
There are problems with existing bone-driven tetrahedral control mesh deformation. The control grid driven by the skeleton is rough and sparse, deformation of the model is difficult to control accurately, and the problems of dislocation, collapse, deformation distortion and the like of the model can be caused.
Disclosure of Invention
The application aims to: aiming at the problems pointed out in the background art, the application provides a multi-constraint three-dimensional grid model deformation method of a skeleton-driven tetrahedron control grid, which uses a tetrahedron topological structure as the control grid and tetrahedron coordinates as a local coordinate system to simplify calculation of model vertexes after deformation, and the deformation operation is more visual and effective through the skeleton driving method. A series of constraints are introduced, so that the control precision of the model is improved, and the problems of distortion and the like possibly occurring in the deformation process are avoided.
The technical scheme is as follows: the application provides a multi-constraint three-dimensional grid model deformation method of a skeleton-driven tetrahedron control grid, which comprises the following steps:
step 1: importing a three-dimensional character grid model, using a group of tetrahedron topological structures as control grids, embedding the character model into the control grid, constructing a local tetrahedron coordinate system according to the control grids, establishing the position relation between model vertexes and the control grids, and recording the tetrahedron coordinates of the control grid topological structures and the model vertexes;
step 2: drawing according to a character model to generate a skeleton structure, enabling the skeleton to move through translation and rotation joint point operation, binding a control grid to the skeleton, and finally calculating a new position of a corresponding vertex of the model according to tetrahedron coordinates of the model vertex and the deformed control grid;
step 3: constraining model deformation: setting a constraint area by taking each tetrahedron control grid as a unit, and setting weights for the constraint areas to control the deformation degree:
step 3.1: each tetrahedron control grid is used as a constraint area, and weights are designed according to the deformability degree of the model in the area, and the weight range is 0, 1;
step 3.2: one vertex O, O' on the model is the new position after the point O is deformed, where the O coordinate is (x 1 ,y 1 ,z 1 ) The O' coordinate is (x 2 ,y 2 ,z 2 ) Finding out the joint point coordinates of the direct influence point O, taking the joint point as a circle center, recording the coordinates as (cx, cy, cz), and calculating the arc equation and radian from O to O';
the vector equation for an arc can be expressed as:
r(t)=(cx,cy,cz)+r*cos(t)*u+r*sin(t)*v
wherein, (cx, cy, cz) is the coordinate of the center of the circle, r is the radius, t is the parameter, u and v are two unit vectors perpendicular to the plane of the arc;
radians are calculated using vector inner products:
v 1 =(x 1 -cx,y 1 -cy,z 1 -cz)
v 2 =(x 2 -cx,y 2 -cy,z 2 -cz)
θ=arccos((v 1 ·v 2 )/(|v 1 |*|v 2 |))
wherein v is 1 ·v 2 Represents the inner product of the vector, |v 1 I and V 2 The i represents the modulus or length of the vector, respectively;
step 3.3: the position of the point O after the change is restrained by the product of the weight and the radian, the position of the point O is unchanged when the weight is 0, the point O is changed to the position of O' when the weight is 1, and the value of the weight is specifically set according to the rigidity condition which the deformation part is required to keep;
step 3.4: repeating the steps to set constraint for the model vertexes;
step 4: constraint is carried out on the control grid deformation: generating a surrounding sphere according to the vertex of the control grid, setting the radius of the surrounding sphere, and limiting the deformation range of the control grid; setting tetrahedron volume constraint and stretching constraint according to the control grid side length and area factors, and controlling the control grid volume change and the stretching degree of the side length:
step 5: and re-drawing and rendering the deformed effect of the model according to the control grid and the constraint thereof.
Further, the tetrahedral control grid and the tetrahedral coordinate using method in the step 1 are as follows:
adopting the idea of free deformation technology, constructing a control grid by combining tetrahedral topological structures as a basis, embedding a three-dimensional character model into the control grid, and recording each tetrahedral control grid as T i =(v 1 ,v 2 ,v 3 ,v 4 ),T i Representing tetrahedrons with the number i, taking each tetrahedron structure as a tetrahedron coordinate system, and calculating tetrahedron coordinates of all model vertexes in each tetrahedron coordinate system, wherein the coordinate form is P j =(P a ,P b ,P c ) Wherein P is j Representing the tetrahedral coordinates of the vertex numbered j.
Further, the specific steps for realizing the model deformation in the step 2 are as follows:
step 2.1: constructing a motion skeleton according to the character model, setting skeleton segments, and taking endpoints of the skeleton segments as articulation points, so that a user controls skeleton gestures by controlling translation and rotation of the articulation points;
step 2.2: binding vertices of a tetrahedral control mesh to a bone as control points, transforming point Q to bone B k On, let Q Bk As Q in bone B k Reference above:
Q Bk =QB k -1
when Q is k Moving from basic state to a certain state Q k After' new coordinates of Q are:
Q k '=QB k -1 B k '=QM k
wherein M is k Is a transformation matrix of bone k, M k Transforming the skeleton k from the basic posture to a new movement posture;
and the transformed coordinate Q'Then by all Q k The 'weighted' result is:
wherein W is k Is the influence weight of skeleton K to point Q, 1<k<n, where n is the total number of bones that affect Q; w (W) k If the value is larger, the distance between the Q point and the bone K is closer, and the influence of K is larger;
step 2.3: the control grid deformation is realized by operating a skeleton, a new position of a control grid vertex is obtained, and the new coordinate position of the model vertex is obtained according to the coordinate of the tetrahedron control grid and the tetrahedron coordinate of the model vertex, taking a vertex M on the model as an example:
M=P k N
wherein. M is the Cartesian coordinates of point M, P k The new position of the vertex M is obtained according to the tetrahedron coordinate of the point M and the matrix N.
Further, in the step 4, a specific step of setting a constraint for the control grid is as follows:
step 4.1: setting constraints for control grid vertices, setting point constraints: generating a surrounding sphere with a radius r by taking a joint point as a circle center according to the joint point position, wherein the nearby control grid vertexes can only move in the respective surrounding spheres, and if a control grid vertex K is a new position after skeleton driving deformation, if K is in the surrounding sphere and K ' is not in the surrounding sphere, the point K ' is constrained, and the optimized point position is an intersection point of a line segment KK ' and the surrounding sphere;
step 4.2: setting a stretching constraint: is the vertex (P) 1 ,P 2 ) Setting a stretching constraint, P 1 ,P 2 Is the vertex on the control grid, P is controlled by the following formula 1 ,P 2 Distance of (2):
C(P 1 ,P 2 )=|P 1 -P 2 |-d=0
wherein d is the length of the edge in the initial state of the control grid, and the correction factor is calculated to meet the constraint:
wherein k is s Is a static parameter range of [0,1]]As the degree of elasticity of the edge;
step 4.3: setting tetrahedral volume constraint: defining a volume constraint for the four vertices (P1, P2, P3, P4) of the tetrahedron:
wherein P is i,j Represents P i -P j V0 is the volume in the initial state of the tetrahedron;
the gradient of change in vertex position is:
namely:
thus, the correction factor for each vertex of the tetrahedron is:
where k is a constant and s is a scale factor:
further, the three-dimensional grid model deformation process is specifically as follows:
when the tetrahedron control grid deforms, under the action of volume constraint, 4 vertexes make adjustment to ensure that the volume of the tetrahedron after deformation is kept unchanged as much as possible, so that the model volume is close to an initial state;
adding control grid constraints by the above order: firstly, limiting the change range of the control grid vertexes by utilizing points, and then gradually adjusting the positions of the control grid vertexes by stretching constraint and volume constraint.
The beneficial effects are that:
the application uses a tetrahedral topology structure as a control grid, and has the following advantages: the deformation result is more vivid and natural, can provide better local control capability, and has better grid quality. Meanwhile, tetrahedron coordinates are introduced, so that calculation of vertex positions after deformation is simplified. And aiming at the problems of model dislocation, collapse, deformation distortion and the like possibly occurring in a skeleton-driven tetrahedron control grid, the following constraint is added: regional constraints, point constraints, stretch constraints, volume constraints. By adding these constraints, the method of the present application can improve the accuracy and stability of the deformation of the bone-driven tetrahedral control mesh, thereby yielding higher quality deformation results. This approach helps solve the problems of the prior art and further improves the application of the deformation method of the bone drive control grid.
Drawings
FIG. 1 is a flow chart for bone-driven tetrahedral control mesh deformation optimization;
FIG. 2 is an effect diagram of an initial model and control grid;
FIG. 3 is a diagram of a bone-binding control grid effect;
FIG. 4 is a graph of the effect of non-optimized deformation;
fig. 5 is a graph of the deformation effect after optimization.
Detailed Description
The present application is further illustrated below in conjunction with specific embodiments, it being understood that these embodiments are meant to be illustrative of the application and not limiting the scope of the application, and that modifications of the application, which are equivalent to those skilled in the art to which the application pertains, fall within the scope of the application defined in the appended claims after reading the application.
The application discloses a multi-constraint three-dimensional grid model deformation method of a skeleton-driven tetrahedron control grid, which comprises the following specific operation processes:
step 1: and (3) importing a three-dimensional character grid model, designing and using a group of tetrahedron topological structures as control grids, embedding the character model into the control grid, constructing a local tetrahedron coordinate system according to the control grids, establishing the position relation between model vertexes and the control grids, and finally recording the tetrahedron coordinates of the control grid topological structures and the model vertexes. The method comprises the following specific steps:
step 1.1: and drawing the character model according to the obj file of the character model.
Step 1.2: the character model is embedded into a control grid composed of tetrahedrons.
Step 1.3: constructing a local coordinate system from these tetrahedrons: tetrahedral coordinate system.
Step 1.4: calculating tetrahedral coordinates of all model vertexes in each tetrahedral coordinate system, wherein the coordinate form is P j =(P a ,P b ,P c ) Wherein P is j Representing the tetrahedral coordinates of the vertex numbered j. Recording model vertex tetrahedron coordinate set p= (P) 1 ,P 2 ,...,P m ) Tetrahedral set t= (T 1 ,T 2 ,...,T n )。
Step 2: and drawing according to the character model to generate a framework structure, wherein the framework is required to realize the framework motion through operations such as translation, rotation joint points and the like. Binding the control grid to the skeleton to enable the control grid to move along with the skeleton, and finally calculating a new position of a corresponding vertex of the model according to tetrahedron coordinates of the vertex of the model and the deformed control grid. The method comprises the following specific steps:
step 2.1: and constructing a motion skeleton according to the character model, setting skeleton segments, and taking endpoints of the skeleton segments as articulation points, so that a user can control skeleton gestures by controlling translation and rotation of the articulation points.
Step 2.2: binding vertices of a tetrahedral control mesh as control points to bone, e.g. transforming point Q to bone B k On, let Q Bk As Q in bone B k Reference above:
Q Bk =QB k -1
when Q is k Moving from basic state to a certain state Q k After' new coordinates of Q are:
Q k '=QB k -1 B k '=QM k
wherein M is k Is a transformation matrix of bone k, M k The skeleton k is transformed from the basic posture to a new movement posture. And the transformed coordinates Q' are composed of all Q k The 'weighted' result is:
wherein W is k Is the influence weight of skeleton K to point Q, 1<k<n, where n is the total number of bones that affect Q. W (W) k If the value is larger, the Q point is closer to the K of the bone, and the influence of K is larger.
Step 2.3: the control grid deformation is realized by operating the skeleton, so that a new position of the control grid vertex can be obtained, and the new coordinate position of the model vertex can be obtained according to the coordinate of the tetrahedron control grid and the tetrahedron coordinate of the model vertex. Taking a vertex M on the model as an example:
M=P k N
wherein M is the Cartesian coordinates of point M, P k The tetrahedron coordinate of the point M is a matrix formed by the vertexes of the tetrahedron where the point M is located, and the new position of the vertex M can be obtained according to the tetrahedron coordinate of the point M and the matrix N.
Step 3: constraining model deformation: and setting a constraint area by taking each tetrahedron control grid as a unit, and setting a weight for the constraint area to control the deformation degree, wherein the stronger the constraint is, the smaller the influence range of the control grid on the model deformation is. The method comprises the following specific steps:
step 3.1: each tetrahedral control grid is used as a constraint area, and weights are designed according to the model deformability degree in the area, and the weight range is [0,1].
Step 3.2: taking one vertex O on the model as an example, O' is the new position after the point O is deformed, where the O coordinate is (x 1 ,y 1 ,z 1 ) The O' coordinate is (x 2 ,y 2 ,z 2 ). And (3) finding out the joint point coordinates of the direct influence point O, taking the joint point as a circle center, recording the coordinates as (cx, cy, cz), and calculating the arc equation and radian from O to O'.
The vector equation for an arc can be expressed as:
r(t)=(cx,cy,cz)+r*cos(t)*u+r*sin(t)*v
where (cx, cy, cz) is the coordinates of the center of the circle, r is the radius, t is the parameter, and u and v are two unit vectors perpendicular to the plane in which the arc lies.
Radians are calculated using vector inner products:
v 1 =(x 1 -cx,y 1 -cy,z 1 -cz)
v 2 =(x 2 -cx,y 2 -cy,z 2 -cz)
θ=arccos((v 1 ·v 2 )/(|v 1 |*|v 2 |))
wherein v is 1 ·v 2 Represents the inner product of the vector, |v 1 I and V 2 I represents the modulus or length of the vector, respectively.
Step 3.3: the position of the point O after the change is restrained by the product of the weight and the radian, if the weight is 0, the position of the point O is unchanged, and if the weight is 1, the point O is changed to the position of the point O', and the value of the weight is specifically set according to the rigidity condition which the deformation part is required to keep.
Step 3.4: repeating the steps to set constraints for the model vertices.
Step 4: constraint is carried out on the control grid deformation: generating a surrounding sphere according to the vertex of the control grid, setting the radius of the surrounding sphere, and limiting the deformation range of the control grid; and setting tetrahedral volume constraint and stretching constraint according to factors such as the side length and the area of the control grid, and controlling the volume change and the stretching degree of the side length of the control grid. The method comprises the following specific steps:
step 4.1: constraints are set for control mesh vertices, such as setpoint constraints: and generating an enclosing sphere with the radius r by taking the node as the center of a circle according to the position of the node, wherein the value of r is the distance from the node to the constraint point. The nearby control mesh vertices can only move within the respective bounding sphere, assuming a control mesh vertex K, K' is the new position after bone-driven deformation. If K is in the surrounding sphere and K ' is not in the surrounding sphere, the point K ' is constrained, and the optimized point position is the intersection point of the line segment KK ' and the surrounding sphere.
Step 4.2: setting a stretching constraint: is the vertex (P) 1 ,P 2 ) Setting a stretching constraint, P 1 ,P 2 Is the vertex on the control grid, P is controlled by the following formula 1 ,P 2 Distance of (2):
C(P 1 ,P 2 )=|P 1 -P 2 |-d=0
wherein d is the length of the edge in the initial state of the control grid, and the correction factor is calculated to meet the constraint:
wherein k is s Is a static parameter range of [0,1]]As the degree of elasticity of the edge.
Step 4.3: setting tetrahedral volume constraint: defining a volume constraint for the four vertices (P1, P2, P3, P4) of the tetrahedron:
wherein P is i,j Represents P i -P j V0 is the volume in the initial state of the tetrahedron.
The gradient of change in vertex position is:
namely:
thus, the correction factor for each vertex of the tetrahedron is:
where k is a constant and s is a scale factor:
when the tetrahedron control grid is deformed, under the action of volume constraint, the 4 vertexes can be adjusted to ensure that the volume of the tetrahedron after deformation is kept unchanged as much as possible, so that the model volume is as close to an initial state as possible.
Adding constraints by the above order: firstly, limiting the change range of the control grid vertexes by points, and then gradually adjusting the positions of the control grid vertexes by stretching constraint and volume constraint, so that the problems of model collapse, dislocation, distortion and the like in model deformation can be effectively solved. So adding these constraints to the portions where the model deformation effect is poor can effectively improve the true degree of deformation of these portions.
Step 5: after undergoing a series of optimizations, redrawing and rendering the deformed effect of the model according to the control grid and the constraint thereof.
Step 5.1: optimizing deformation by adding the constraint in the steps 3 and 4, and adjusting parameters according to the final deformation, so that the deformation result is more true;
step 5.2: and after the optimization is completed, obtaining a new position of the model vertex, updating the vertex coordinates, and obtaining a final deformation result.
The foregoing embodiments are merely illustrative of the technical concept and features of the present application, and are intended to enable those skilled in the art to understand the present application and to implement the same, not to limit the scope of the present application. All equivalent changes or modifications made according to the essence of the present application should be covered within the protection scope of the present application.
Claims (5)
1. A method for deforming a multi-constraint three-dimensional grid model of a skeleton-driven tetrahedral control grid, comprising the steps of:
step 1: importing a three-dimensional character grid model, using a group of tetrahedron topological structures as control grids, embedding the character model into the control grid, constructing a local tetrahedron coordinate system according to the control grids, establishing the position relation between model vertexes and the control grids, and recording the tetrahedron coordinates of the control grid topological structures and the model vertexes;
step 2: drawing according to a character model to generate a skeleton structure, enabling the skeleton to move through translation and rotation joint point operation, binding a control grid to the skeleton, and finally calculating a new position of a corresponding vertex of the model according to tetrahedron coordinates of the model vertex and the deformed control grid;
step 3: constraining model deformation: setting a constraint area by taking each tetrahedron control grid as a unit, and setting weights for the constraint areas to control the deformation degree:
step 3.1: each tetrahedron control grid is used as a constraint area, and weights are designed according to the deformability degree of the model in the area, and the weight range is 0, 1;
step 3.2: one vertex O, O' on the model is the new position after the point O is deformed, where the O coordinate is (x 1 ,y 1 ,z 1 ) O' sitMarked as (x) 2 ,y 2 ,z 2 ) Finding out the joint point coordinates of the direct influence point O, taking the joint point as a circle center, recording the coordinates as (cx, cy, cz), and calculating the arc equation and radian from O to O';
the vector equation for an arc can be expressed as:
r(t)=(cx,cy,cz)+r*cos(t)*u+r*sin(t)*v
wherein, (cx, cy, cz) is the coordinate of the center of the circle, r is the radius, t is the parameter, u and v are two unit vectors perpendicular to the plane of the arc;
radians are calculated using vector inner products:
v 1 =(x 1 -cx,y 1 -cy,z 1 -cz)
v 2 =(x 2 -cx,y 2 -cy,z 2 -cz)
θ=arccos((v 1 ·v 2 )/(|v 1 |*|v 2 |))
wherein v is 1 ·v 2 Represents the inner product of the vector, |v 1 I and V 2 The i represents the modulus or length of the vector, respectively;
step 3.3: the position of the point O after the change is restrained by the product of the weight and the radian, the position of the point O is unchanged when the weight is 0, the point O is changed to the position of O' when the weight is 1, and the value of the weight is specifically set according to the rigidity condition which the deformation part is required to keep;
step 3.4: repeating the steps to set constraint for the model vertexes;
step 4: constraint is carried out on the control grid deformation: generating a surrounding sphere according to the vertex of the control grid, setting the radius of the surrounding sphere, and limiting the deformation range of the control grid; setting tetrahedron volume constraint and stretching constraint according to the control grid side length and area factors, and controlling the control grid volume change and the stretching degree of the side length:
step 5: and re-drawing and rendering the deformed effect of the model according to the control grid and the constraint thereof.
2. The method for deforming a multi-constraint three-dimensional grid model of a bone-driven tetrahedral control grid according to claim 1, wherein the method for using the tetrahedral control grid and tetrahedral coordinates in step 1 is as follows:
adopting the idea of free deformation technology, constructing a control grid by combining tetrahedral topological structures as a basis, embedding a three-dimensional character model into the control grid, and recording each tetrahedral control grid as T i =(v 1 ,v 2 ,v 3 ,v 4 ),T i Representing tetrahedrons with the number i, taking each tetrahedron structure as a tetrahedron coordinate system, and calculating tetrahedron coordinates of all model vertexes in each tetrahedron coordinate system, wherein the coordinate form is P j =(P a ,P b ,P c ) Wherein P is j Representing the tetrahedral coordinates of the vertex numbered j.
3. The method for deforming a model of a multi-constraint three-dimensional grid of a bone-driven tetrahedral control grid according to claim 1, wherein the specific steps for realizing the model deformation in the step 2 are as follows:
step 2.1: constructing a motion skeleton according to the character model, setting skeleton segments, and taking endpoints of the skeleton segments as articulation points, so that a user controls skeleton gestures by controlling translation and rotation of the articulation points;
step 2.2: binding vertices of a tetrahedral control mesh to a bone as control points, transforming point Q to bone B k On, let Q Bk As Q in bone B k Reference above:
Q Bk =QB k -1
when Q is k Moving from basic state to a certain state Q k After' new coordinates of Q are:
Q k '=QB k -1 B k '=QM k
wherein M is k Is a transformation matrix of bone k, M k Transforming the skeleton k from the basic posture to a new movement posture; and the transformed coordinates Q' are composed of all Q k The 'weighted' result is:
wherein W is k Is the influence weight of skeleton K to point Q, 1<k<n, where n is the total number of bones that affect Q; w (W) k If the value is larger, the distance between the Q point and the bone K is closer, and the influence of K is larger;
step 2.3: the control grid deformation is realized by operating a skeleton, a new position of a control grid vertex is obtained, and the new coordinate position of the model vertex is obtained according to the coordinate of the tetrahedron control grid and the tetrahedron coordinate of the model vertex, taking a vertex M on the model as an example:
M=P k N
wherein. M is the Cartesian coordinates of point M, P k The new position of the vertex M is obtained according to the tetrahedron coordinate of the point M and the matrix N.
4. The method for deforming a multi-constrained three-dimensional mesh model of a bone-driven tetrahedral control mesh according to claim 1, wherein the specific step of setting constraints for the control mesh in step 4 is as follows:
step 4.1: setting constraints for control grid vertices, setting point constraints: generating a surrounding sphere with a radius r by taking a joint point as a circle center according to the joint point position, wherein the nearby control grid vertexes can only move in the respective surrounding spheres, and if a control grid vertex K is a new position after skeleton driving deformation, if K is in the surrounding sphere and K ' is not in the surrounding sphere, the point K ' is constrained, and the optimized point position is an intersection point of a line segment KK ' and the surrounding sphere;
step 4.2: setting a stretching constraint: is the vertex (P) 1 ,P 2 ) Setting a stretching constraint, P 1 ,P 2 Is the vertex on the control grid, P is controlled by the following formula 1 ,P 2 Distance of (2):
C(P 1 ,P 2 )=|P 1 -P 2 |-d=0
wherein d is the length of the edge in the initial state of the control grid, and the correction factor is calculated to meet the constraint:
wherein k is s Is a static parameter range of [0,1]]As the degree of elasticity of the edge;
step 4.3: setting tetrahedral volume constraint: defining a volume constraint for the four vertices (P1, P2, P3, P4) of the tetrahedron:
wherein P is i,j Represents P i -P j V0 is the volume in the initial state of the tetrahedron;
the gradient of change in vertex position is:
namely:
thus, the correction factor for each vertex of the tetrahedron is:
where k is a constant and s is a scale factor:
5. the method for deforming a multi-constrained three-dimensional mesh model of a bone-driven tetrahedral control mesh of claim 4, wherein the three-dimensional mesh model deforming process is specifically as follows:
when the tetrahedron control grid deforms, under the action of volume constraint, 4 vertexes make adjustment to ensure that the volume of the tetrahedron after deformation is kept unchanged as much as possible, so that the model volume is close to an initial state;
adding control grid constraints by the above order: firstly, limiting the change range of the control grid vertexes by utilizing points, and then gradually adjusting the positions of the control grid vertexes by stretching constraint and volume constraint.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311147758.3A CN117173380A (en) | 2023-09-06 | 2023-09-06 | Multi-constraint three-dimensional grid model deformation method for skeleton-driven tetrahedron control grid |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311147758.3A CN117173380A (en) | 2023-09-06 | 2023-09-06 | Multi-constraint three-dimensional grid model deformation method for skeleton-driven tetrahedron control grid |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117173380A true CN117173380A (en) | 2023-12-05 |
Family
ID=88933267
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311147758.3A Pending CN117173380A (en) | 2023-09-06 | 2023-09-06 | Multi-constraint three-dimensional grid model deformation method for skeleton-driven tetrahedron control grid |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117173380A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117710468A (en) * | 2024-02-06 | 2024-03-15 | 天度(厦门)科技股份有限公司 | Gesture redirection method, device, equipment and medium based on joint grid deformation |
-
2023
- 2023-09-06 CN CN202311147758.3A patent/CN117173380A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117710468A (en) * | 2024-02-06 | 2024-03-15 | 天度(厦门)科技股份有限公司 | Gesture redirection method, device, equipment and medium based on joint grid deformation |
CN117710468B (en) * | 2024-02-06 | 2024-05-17 | 天度(厦门)科技股份有限公司 | Gesture redirection method, device, equipment and medium based on joint grid deformation |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sumner et al. | Embedded deformation for shape manipulation | |
Huang et al. | Subspace gradient domain mesh deformation | |
Gain et al. | A survey of spatial deformation from a user-centered perspective | |
Weng et al. | 2D shape deformation using nonlinear least squares optimization | |
Qin et al. | Dynamic catmull-clark subdivision surfaces | |
US6300960B1 (en) | Realistic surface simulation in computer animation | |
Pauly et al. | Multiresolution modeling of point-sampled geometry | |
Guo et al. | Meshless thin-shell simulation based on global conformal parameterization | |
CN117173380A (en) | Multi-constraint three-dimensional grid model deformation method for skeleton-driven tetrahedron control grid | |
Jin et al. | General constrained deformations based on generalized metaballs | |
Hua et al. | Free-form deformations via sketching and manipulating scalar fields | |
Chen et al. | Lattice-based skinning and deformation for real-time skeleton-driven animation | |
Mandal et al. | Dynamic modeling of butterfly subdivision surfaces | |
CN116758213A (en) | Three-dimensional grid model deformation method combined with skeleton driving | |
Jack et al. | IGE-Net: Inverse graphics energy networks for human pose estimation and single-view reconstruction | |
Chen et al. | Skeleton-driven surface deformation through lattices for real-time character animation | |
CN111105502A (en) | Biological rib nose and lower jaw simulation plastic technology based on artificial bone repair material | |
CN101807290B (en) | two-dimensional cartoon character deformation method | |
Hua et al. | Scalar-field-guided adaptive shape deformation and animation | |
Marin et al. | CMH: Coordinates Manifold Harmonics for Functional Remeshing. | |
Zhang et al. | A Multi-constraint 3D Mesh Models Deformation Method | |
Mandal et al. | Shape recovery using dynamic subdivision surfaces | |
Guo et al. | Dynamic sculpting and deformation of point set surfaces | |
Choi et al. | Image morphing using mass-spring system | |
Yang et al. | Rapid Skin Deformation Algorithm of the Three-Dimensional Human Body |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |