31
Cloth Simulation

Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Cloth Simulation

Page 2: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

What make cloth hard to simulate?

✦ Due to the thin and flexible nature of cloth, it produces detailed folds and wrinkles, which in turn can lead to complicated self-collisions.

✦ Cloth is characterized by strong resistance to stretch and weak resistance to bending, which leads to a stiff set of equations and thus prohibits the use of large time steps.

Page 3: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Woven versus knit cloth✦ The yarns in woven fabric are nearly immobile with very limited

deformations in the yarn structure.

✦ Knit materials consists of interlocked loops which deform and slide readily with dramatic changes in small-scale structures.

✦ Most research on cloth mechanics has focused on woven cloth.

woven fabric knit fabric

Page 4: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Woven fabric

Page 5: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Knit fabric

Page 6: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Mass-spring versus FEM

✦ Mass-spring system is easy to implementation and cheap to compute, but is not as accurate.

✦ FEM spatially discretizes a set of PDEs which govern the deformation in continuum mechanics.

✦ FEM provides a more accurate way to measure complex material behaviors beyond a simple elastic model.

Page 7: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Simulating different materials

Page 8: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

✦ Model clothes as triangular mesh of particles in

✦ The geometry state of clothes is

World space

x 2 R

3n

R3

Page 9: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Material space✦ Treat cloth as a 2-dimensional manifold embedded in .

✦ Capture the rest state of cloth by assigning each particle an unchanging coordinate (u , v) in the material space.

✦ The mapping between the material space and the world space is defined by w(u, v).

R3

Page 10: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Equations of motion

✦ Equation of motion:

✦ Internal forces are derived from potential energy function E(x).

Mx = f

int

+ f

ext

mass matrix , R3nX3n

acceleration of particles, R3n

cloth internal forces, R3n

gravity and contact force, R3n

M

x

fint

fext

Page 11: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Potential energy

✦ The negative gradient of each potential function defines a type of internal force:

✦ General form of E(x):

✦ The internal force can be computed by

E(x) =k

2C(x)TC(x)

�@E

@x

f = �@E

@x

T

= �k@C(x)

@x

T

C(x)

Page 12: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Internal forces

✦ In general, clothes resists motion in four directions

stretch compress shear bendin-plane motion out-of-plane motion

Page 13: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Stretch force

✦ Stretch/compress force can be measured by deformation gradient.

✦ Assuming w is a linear function over each triangle, the gradient of w is constant within each triangle.

✦ Define energy function using

Page 14: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Shear force

✦ Shear force can be measured by

✦ When the wu and wv are orthogonal, shear force is zero.

✦ Define energy function for shear force using

wTuwv

Page 15: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Bend force

✦ Bend force is measured between a pair of adjacent triangles.

✦ Using two geometry relations, we can solve for the bending angle.

✦ Define energy function using

n1n2

e

sin ✓ = (n1 ⇥ n2) · e

cos ✓ = n1 · n2

C(x) = ✓

Page 16: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Damping force

✦ Damping force turns out to be important both for realism and numerical stability.

✦ Damping forces should

✦ act in direction of corresponding elastic force, and

✦ be proportional to the velocity in that direction.

d = �kdC(x)�C(x)

�x

Page 17: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Buckling effect

When we push cloth like this,

we expect to see this.

But in the mass-spring system, the compression force has to be very stiff to get out-of-plane motion.

Page 18: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Buckling model

✦ Replace bend and compression forces with a single nonlinear model.

✦ Details in Ko and Choi SIGGRAPH 2002.

Page 19: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Stable but responsive cloth

Page 20: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Integration issues

✦ In general, cloth stretches little if at all in the plane.

✦ To counter this, we generally have large in-plane stretch forces, which requires a high stiffness coefficient.

✦ Since explicit integrators suffer from this stiff system, an implicit integrator is used to achieve larger time steps.

Page 21: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Implicit integration

✦ Transfer a second-order ODE to the first-order form.

✦ Compute the next state based on the derivative evaluated at the next state.

d

dt

�xv

⇥=

�v

M�1f(x,v)

�xv

⇥=

�x0

v0

⇥+ h

�v

M�1f(x,v)

derivative atnext state

Page 22: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Linearize derivative function✦ Linearize derivative function about the current state.

✦ Compute next state by implicit integration

✦ Solve for linear system

✦ Update state

�v

M�1f(x,v)

⇥=

�v0

M�1f0

⇥+

�v

M�1f(x,v)

�xv

⇥�

�x�v

�xv

⇥=

�x0

v0

⇥+ h

�v0 + �v

M�1(f0 + �f�x�x + �f

�v�v

�I� hM�1 �f

�v� h2M�1 �f

�x

⇥�v = hM�1

�f0 + h

�f�x

v0

x = x0 + h(v0 +�v)

v = v0 +�v

Page 23: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Collision and constraints

✦ Collision is the bottleneck of simulation due to a large number of collision points.

✦ Interpenetrating is very obvious and difficult to correct after the fact.

✦ Use repulsion forces and and impulses to handle collision.

Page 24: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Practical collision handling

✦ Bridson et al proposed an efficient and robust method to handle collisions.

✦ Use repulsion forces to deal with this vast majority of collisions in a simple and efficient manner.

✦ Use a more expensive but completely robust method to stop the few that remain.

Page 25: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Hybrid collision handling

✦ Beginning of time step:

✦ Integrate cloth dynamics to advance to intermediate state

✦ Compute average velocity:

✦ Apply repulsion and friction to average velocity to get

✦ Resolve collision by modifying to the final midstep velocity

✦ Update the final position:

✦ Update velocity: if collision ; otherwise

x

0, v0

x

1, v1

v

1/2 = (x1 � x

n)/h

v1/2

v1/2 v1/2

x

1 = x

0 + hv1/2

v1 = v1/2 v1 = v1

Page 26: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Impulse on discrete representation

v1

v2

v3

vavb

I =2I

1 + w21 + w2

2 + w23

vnewb = vb � (I/m)n

vnewi = vi + wi(I/m)n

i = 1, 2, 3

Page 27: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Repulsion

✦ Repulsion forces dramatically reduce the number of collisions by pushing away vertices that are in close proximity.

✦ Ensure that pieces of the cloth are well separated at a distance on the order of this cloth thickness.

✦ The repulsion force is proportional to the overlap, d, beyond the cloth thickness h (e.g. 1mm )

✦ The spring based repulsion force is modeled with a spring of stiffness k in the normal direction, n

d = h� (xb � w1x1 � w2x2 � w3x3)

kd�tnrepulsion impulse =

Page 28: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Repulsion

✦ Spring repulsion force is limited to a maximum when the objects touch to avoid stiffness system.

Ir = �min(�tkd,m(0.1d

�t� vr))

Page 29: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Friction

✦ Use Coulomb’s model for friction, both static and kinetic, with a single friction parameter !.

✦ The normal force is defined as the negative of the repulsion force, so the friction impulse is

✦ The tangential velocity after friction is applied:

vT = max(1� µFN�t/m

|vT |, 0)vT

µFN�t

Page 30: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Collision resolution

✦ Collision processing algorithm is activated when a collision actually occurs.

✦ If the geometry is approaching, apply a completely inelastic repulsion impulse. Otherwise, apply a spring based repulsion force.

Page 31: Cloth Simulation - Georgia Institute of Technology...Woven versus knit cloth The yarns in woven fabric are nearly immobile with very limited deformations in the yarn structure. Knit

Demo