Rony Goldenthal et al. Presenter : SoHyeon Jeong ([email protected]) ACM SIGGRAPH 2007.

44
Efficient Simulation of Inextensible Cloth Rony Goldenthal et al. Presenter : SoHyeon Jeong ([email protected]) ACM SIGGRAPH 2007

Transcript of Rony Goldenthal et al. Presenter : SoHyeon Jeong ([email protected]) ACM SIGGRAPH 2007.

  • Slide 1
  • Rony Goldenthal et al. Presenter : SoHyeon Jeong ([email protected]) ACM SIGGRAPH 2007
  • Slide 2
  • Movie
  • Slide 3
  • Contents 1. Abstract 2. Introduction 3. Related Work 4. Cloth Model 5. Constrained Dynamics 1. Implicit Constraint Direction(ICD) 2. Step and Project(SAP) 3. Fast Projection Method 4. Implementation 6. Results 7. Discussion
  • Slide 4
  • Abstract A Simulation of Woven Fabrics with LOW Strain Constrained Lagrangian Mechanics Fast Projection Method Resulting algorithms acts as a Velocity Filter Weft Warp Woven Fabric
  • Slide 5
  • Algorithm I Simulation based-on Elastic Materials Constraints Lagrangian Mechanics Oscillation occurs Rest length Direction : Length : Eq(1)
  • Slide 6
  • Algorithm II The problem : Direction : Length : The Solution: to use Constraint at n+1 Direction : Length :
  • Slide 7
  • Algorithm III However, we dont know, Compute Implicitly Step and Project Find the closest point Fast Projection Find a close point until it converges or less than the tolerance
  • Slide 8
  • Introduction I The Problem Most fabrics do not stretch under their own weight Unfortunately, Popular cloth solvers allow to Stretch because of Performance Unrealistic 10% Strain Inaccuracy + Instability of Discrete Time Integration Time Step, h Force, F For stability or The most powerful!! Integrated velocity
  • Slide 9
  • Introduction II The Solution Strain and Strain Rate Limiting Algorithms are required [Provot 1995] Our Method to solve Prohibits Stretching by enforcing Constraint Equations NOT by Integrating internal spring forces Constraint based method is well-suit to operate in Quasi-Inextensible Regime. Motivation : [Bridson et al. 2002] Velocity filtering passes
  • Slide 10
  • Contributions (2) We summarize the relevant Literature (3) We describe the basic discrete cloth model. (4.1) We propose a novel CLM formulation that is implicit on the constraint gradient. (4.2) We prove that the implicit methods nonlinear equations correspond to a minimization problem (4.3) This result motivates a fast projection method for enforcing inextensibility (4.4) We describe an implementation of fast projection as a simple and efficient velocity filter, as part of a framework that decouples time stepping, inextensibility, and collision passes (5) Consequently, the fast projection method easily incorporates with a codes existing bending, damping, and collision models, to yield accelerated performance
  • Slide 11
  • Figure 1 Importance of capturing inextensibility. Actual Denim PatchSimulation results of progressively smaller permissible strain
  • Slide 12
  • Related Work I Broad Surveys on Cloth Simulation [House and Breen 2000; Choi and Ko 2005] Treating Cloth as an Elastic Material [Terzopoulos et al. 1987] [Breen et al. 1994], [Eberhardt et al. 1996] [Baraff and Witkin 1998], [Choi and Ko 2002] To reduce visible stretching, Large elastic moduli or stiff springs Degrading numerical stability Hookes Law
  • Slide 13
  • Related Work II Implicit Integration [Baraff and Witkin 1998] Large, stable time steps Adaptive time stepping Implicit-Explicit (IMEX) formulation [Eberhardt 2000], [Boxerman et al. 2003] Only a subset of forces implicitly Stretching forces are singled out for special treatment (Related to this papers method) Problem Improved performance by allowing stretch of fabrics Implicit Systems perform many iterations with elastic material stiffness Timestepping algorithms introduce undesirable numerical damping Backward Euler & BDF2
  • Slide 14
  • Related Work III An alternative method To reduce the stiff component and reformulate it as a constraint [Hairer et al. 2002] Discrete Setting: various iterative or global Algorithms Iterative Enforcement Correcting Edge lengths by displacing incident vertices [Provot 1995] Bounding the rate of change of spring length per a time step less than 10% of the current length [Desbrun et al. 1999; Meyer et al. 2001;Fuhrmann et al. 2003;Bridson et al. 2002; 2003] Non-linear Gauss-Seidel: enforce inextensibility on each constraints [Muller et al. 2006] Iterative strain Limiting algorithms behave as Jacobi or Gauss-Seidel [Bridson et al.] Iterative constraint enforcement requires a number of iterations
  • Slide 15
  • Related Work IV Global Enforcement [House et al. 1996] Lagrangian Multiplier with CLM to treat stretching Alleviates the difficulties associated with poor numerical conditioning and artificial damping Difficulties in handling collision response in [2000] Our Method : Overcome by velocity-filter paradigm to handle inextensibility and complex collision Numerical Drift Exacerbated by the discontinuities introduced during collision responses : overcome by constraint-restoring springs But hard to adjust the spring coefficients Caused by linearization of constraint equation Our method : use nonlinear equation
  • Slide 16
  • Related Work V [Tsiknis 2006] Triangle strain limiting with a global stitching step for stability [Hong et al. 2005] Linearized implicit formulation to improve stability Summary Spring-based/Strain-limiting approach is costly and evenly intractable The alterative : Constraint-based Methods
  • Slide 17
  • Cloth Model Woven Fabrics A complex mechanical network of interleaving yarn Materials warp and weft directions do not stretch perceptively Quadrangulation Less edges (2n VS 3n), given n vertices Subtracting constraints from positional DOFS : O(n) DOFs remain, corresponding to the normal direction at each vertex (VS zero DOFs for a triangulation) Constraints are linearly independent Full-rank Jacobian treatable by direct solver
  • Slide 18
  • Cloth Model Stretch Warp- or weft aligned quad edge maintains its undeformed length l, by enforcing Other : compatible with existing systems Shear : fabrics actually perceptibly shear Bending / collisions / and so on.. (1) (2) Its gradient: Constraint:
  • Slide 19
  • Constrained Dynamics Augmented Lagrangian Equation [Marsden 1999] : the time-varying 3n-vector of vertex position : time derivative : 3n x 3n mass matrix : the stored energy (e.g. bending, shear, and gravity) : the m-vector of constraints (i-th edge) : the m-vector of Lagrange multipliers 1 x 3n 3n x 3n 3nx13nx1 3nx13nx1 1 1 1 x m Mx1Mx1 Mx1Mx1 xx--x
  • Slide 20
  • Constrained Dynamics Euler-Lagrange Equation (3) (4)
  • Slide 21
  • Discretization Discretization of Continuous functions SHAKE and RATTLE Widely-used family of discretization Extend the Verlet scheme [Hairer et al. 2002] Consider a constraint force direction at the beginning of the time step where and are the position and velocity of the mesh at time replacewith
  • Slide 22
  • Discretization - SHAKE
  • Slide 23
  • Discretization SHAKE (Failure) : : Derivative of C There might be solutions even in the case that the matrix cannot be calculated The gradient directions The magnitudes of the moves are proportional to the entries of
  • Slide 24
  • Discretization SHAKE (Failure) (Q1) No Solution, R(0) nonsingular (Q3) Solutions Exist C rank deficient (Q2) Solutions Exist is singular (Q4) Redundant constraints G rank deficient
  • Slide 25
  • Implicit Constraint Direction I Evaluating the constraint direction, at the end of the time step Explicit : nImplicit : n+1 ICD resolves (Q1), (Q2) and (Q4). (Q3) remedied by decreasing the time step
  • Slide 26
  • Implicit Constraint Direction II ICD time steps ExplicitImplicit Define To obtain, we need to calculate using
  • Slide 27
  • Step and Project Problems of Solving using Newton method Many unknowns (5n) Requires the solution of an indefinite linear system Constraint integration in two steps (a) step forward only the potential forces (b) enforce the constraints by projecting onto the constraint manifold
  • Slide 28
  • Step and Project II The projected point extrimizes the objective function The point on the constraint manifold closest to Closest : minimum S discretization The L2 norm of the mass-weighted displacement of the mesh as it moves from to
  • Slide 29
  • Theorem 1 : ICD SAP
  • Slide 30
  • Newtons Method An iterative method to solve non-linear function Nonlinear system of equations
  • Slide 31
  • Fast Projection Method Solving SAP using Newtons method Each iteration would improve upon a guess for the shortest step Fast Projection Also uses a sequence of iterations But, it relax the requirement of SAP The closest a close point by taking a sequence of smallest steps
  • Slide 32
  • A Step of Fast Projection I Progressively closer approximations to the constrained position The (j+1)th step of fast projection extremizes the objective function Expanding the constraint to first order =start goal tolerance
  • Slide 33
  • A Step of Fast Projection II A quadratic objective function, whose stationary equations with respect to and are Substituting (5) into (6), we eliminate and solve a linear system in Finally, As with ICD/SAP, a projection step require a linear solver Fast projections system, (7), is smaller(2 5), positive define and sparser. (5) (6) (7)
  • Slide 34
  • Algorithm 1 Fast Projection Implementation : Step 3 requires solving a sparse symmetric positive definite linear system PARDISO [Schenk and Gartner 2006]
  • Slide 35
  • Fast Projection Algorithm Convergence condition Until the maximal strain is below a threshold The constraint may be satisfied up to a given tolerance FP finds a manifold point,, that is close (not the closest) Referring Corollary, FP solves C=0 while it approximates F=0 The FPs error is acceptable? First iteration of PF and ICD/SAP is identical At the end of this first iteration : Additional PF iteration seek C 0 Since, increments in x are,therefore F remains in is considered acceptable in many contexts [Baraff and Witkin 1998; Choi and Ko 2002] halt the Newton process after a single iteration
  • Slide 36
  • Figure 3 The effect of fast projection on the residual F After the first and last iterations of fast projection
  • Slide 37
  • Figure 4 The performance of FP against an implicit treatment of stiff springs Ex) 1D chain resists stretching, but not bending (a) permissible strain (b) Mesh resolution Using 80 vertices and 1% strain, FP achieves a 25X speed up
  • Slide 38
  • Draping Cloth To compare fast projection with (1) ICD Is able to use larger timesteps than SHAKE and still converge Each time step is substantially more expensive than SHAKE (2) SHAKE Uses the accelerating suggested in [Barth et al. 1994] to rebuild the matrix once per step or when it fails to converge Extremely small timesteps to converge, but each step is relatively small (3) The strain limiting algorithms (Both Jacobi and Gauss-Siedel) Iterates until strain is in the permissible range
  • Slide 39
  • Figure 5 Performance (a) Permissible strain (5041 vertices) (b) Discretization Resolution (1% permissible strain) As the stiffness is increased for a cloth mesh All CLM methods scale equally well, FP is the fastest
  • Slide 40
  • Figure 6 The simulation results using FP and ICD methods Qualitatively similar results
  • Slide 41
  • Figure 7 FP is capable of producing complex, realistic simulation of cloth
  • Slide 42
  • Figure 8
  • Slide 43
  • Discussion Experiment focus The performance of enforcing inextensibility using CLM Inextensibility : [Bergou et al. 2006] assumes inextensibility to accelerate bending computation Adapting the velocity-filtering speed, simplicity, and software modularity No way to enforce both ideal inextensibility and ideal collision handling Since one filter must execute before the other Both ideals corresponds to sharp constraints combining them in a single pass but, introducing considerable complexity and convergence challenges Practically, the drawback does not cause artifacts in our simulation First, we execute collision handling last Second, the constraint is maintained at the end of the time step errors are not accumulated
  • Slide 44
  • Conclusion The most common fabrics do not stretch visibly The trend is to use stretching formulations based on penalty-springs (a) relaxing realism by allowing 10% strain (b) adapting simple iterative strain and strain-rate algorithms that have poor convergence behavior Constrained Lagrangian Mechanics Straightforward filter Good convergence behavior Enforcing inextensibility One immediate and pragmatic approach to fast and realistic fabric simulation