Главная Virtual Clothing: Theory and Practice

Virtual Clothing: Theory and Practice

,

In this book, we investigate the problem of simulating clothes and clothing. A range of topics are addressed, from shape modeling of a piece of cloth to the realistic garments on virtual humans. Different situations demand different properties a cloth. Existing solutions, though useful for many applications, reveal that further improvements are required. Cloth modeling has been a topic of research in the textile mechanics and engineering communities for a very long time. However, in the mid 1980s, researchers in computer graphics also became interested in modeling cloth in order to include it in the 3D computer­ generated images and films. The evolution of cloth modeling and garment simulation in computer graphics indicates that it has grown from basic shape modeling to the modeling of its complex physics and behaviors. Chapter 2 provides a summary of the different methods developed in computer graphics over the last 15 to 20 years. In computer graphics, only the macroscopic properties of the cloth surface are considered. Physical accuracy is given less importance in comparison to the visual realism. However, a trend of employing a multi­ disciplinary approach has started, and the community of textile engineering and computer graphics have begun to combine their expertise to come up with solutions that can satisfy that of both communities.

Год:
2000
Издание:
1
Издательство:
Springer-Verlag Berlin Heidelberg
Язык:
english
Страниц:
283 / 286
ISBN 13:
978-3-642-57278-4
File:
PDF, 9.99 MB
Скачать (pdf, 9.99 MB)
 
You can write a book review and share your experiences. Other readers will always be interested in your opinion of the books you've read. Whether you've loved the book or not, if you give your honest and detailed thoughts then people will find new books that are right for them.
Virtual Clothing

Springer-Verlag Berlin Heidelberg GmbH

Pascal Volino
Nadia Magnenat -Thalmann

Virtual Clothing
Theory and Practice
With 194 Figures including 27 Colour Plates

Springer

Pascal Volino
Nadia Magnenat- Thalmann
University of Geneva
MiraLab
24, rue General Dufour
1211 Geneve 4, Switzerland
E-mail: {pascal.Nadia.Thalmann@cui.unige.ch}

Cover pic ture by MIRALab- University of Geneva

Library of Congress Cataloging-in-Publication Data
Volino, Pascal.
Virtual clothing/Pascal Volino, Nadia Magnenat -Thalmann.
p.cm.
lncludes bibliographical references and index.
ISBN 978-3-642-63189-4
ISBN 978-3-642-57278-4 (eBook)
DOI 10.1007/978-3-642-57278-4

1. Clothing trade-Computer simulation. 2. Textile industry-Computer simulation.

3. Virtual reality. 1. Magnenat- Thalmann, Nadia, 1946- II. Title
TT497.V652000
687'.01'13-dc21

00-057364

ACM Subject Classification (1998): 1.3,1.2.10,1.6

ISBN 978-3-642-63189-4
This work is subject to copyright. AU rights are reserved, whether the whole or part of the material is concerned, specifically the rights of
translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilm or in any other way, and storage in data
banks. Duplication of this publication or parts thereof is permitted only under the provisions of the German Copyright Law of September 9,
1965, in its current version, and permis sion for use must always be obtained from Springer-Verlag. Violations are liable for prosecution
under the German Copyright Law.

© Springer-Verlag Berlin Heidelberg 2000

The use of general descriptive names, trademarks, etc. in this publication does not imply, even in the absence of a specific statement, that
such names are exempt from the relevant protective laws and regulations and therefore free for general use.
Data conversion by perform, Heidelberg
Design: design + production GmbH, Heidelberg
Printed on acid-free paper SPIN 10721470 06/3142SR - 5 4 3 2 1 O

Acknowledgements

We would like to thank all the people who have contribut; ed to this work. Among the contributors, we are particularly grateful to:
• Marlene Arevalo and Laurence Boissieux, for testing the software and designing fashion
show garment models shown in this book using the MIRALab cloth software.
• Jean-Claude Moussaly, Prithweesh De, and Nabil Sidi-Yacoub for their contribution to the
CD-ROM illustrating this book.
• Endre Bangerter and Sunil Hadap for their contributions to the geometric-wrinkle technologies.
• Professor David Sankoff, from the University of Montreal, for his thorough review of
parts of the manuscript and for his helpful criticism.
• Professor Prem Kalra, from the Indian Institute of Technology in New Dehli, for his contribution to some parts of the book and his valuable comments.
Not forgetting all the MlRALab people for their suggestions on the research work, ideas,
software development and artistic design, a necessary combination for producing these valuable systems and results, particularly Dr. Laurent Moccozet.
The research work in this book has been sponsored mainly by the Swiss National Fund for
Scientific Research (FNRS).

Table of Contents

2

Introduction.................................................................................................................. .
1.1 A Brief Historical Background................ ................ ............ .................................
1.2 Problems........... ............. .............. ................ ...................... ........... ................. .......
1.2.1 Shape and Geometry .......................................................... .................. .....
1.2.2 Behavior ............ .......................... .......................... .................... ........... .....
1.2.3 Interaction with Environment ...................................... .............................
1.2.4 From Cloth to Garment ................................................ .............................
1.2.5 Rendering ..................................................................................................
1.3 Garment Design and Simulation System: An Example ................ ................ .......

1
3
5
5
6
6
7
7
8

Simulation Models ........... ............... .......................................... ................ ............... .....
2.1 Introduction ............ ..................... ............ ........................ ...................... ...............
2.1.1 Dynamics ..................................................................................................
2.1.2 Designing a Mechanical Simulation System .............. ..............................
2.2 Mechanical Properties of Fabric Materials...........................................................
2.2.1 Fabric Mechanical Parameters..................................................................
2.2.2 Experimental Analysis of Fabric Properties .............................................
2.3 Implementing Mechanical Models................ .......................................... .............
2.3.1 Defining Behavior Laws ...........................................................................
2.3.2 Fundamental Laws of Mechanics..............................................................
2.3.3 Defining a Simulation Scheme .................................................................
2.4 Mechanical Simulation Systems ..........................................................................
2.4.1 A Good Simulation System.......................................................................
2.4.2 Geometrical Models ..................................................................................
2.4.3 Continuum Mechanics Models .......... ................................ .......................
2.4.4 Particle System Models.............................................................................
2.4.5 A Fast Particle System for Irregular Meshes ............................................

11
11
11
12
15
15
19
25
25
28
30
35
35
40
42
52
60

VIII

Table of Contents

2.5 Numerical Integration ...................... .................................... ............ ....... ..... ..... ....
2.5.1 Integration Techniques ..............................................................................
2.5.2 Choosing the Suitable Integration Method................................................

72
73
98

3

Collision Detection................ .......... .... ..................................................... ....... ..............
3.1 The Collision Detection Problem .........................................................................
3.1.1 Introduction ...............................................................................................
3.1.2 Mastering Complexity...............................................................................
3.1.3 An Overview of Different Techniques ........... ............ .... ................. ..... .....
3.1.4 Robustness ..................................................... ............................ ................
3.2 A Hierarchical Scheme for Polygonal Meshes .....................................................
3.2.1 Collision Detection on Hierarchical Meshes .............................................
3.2.2 Optimizing for Self-Collision Detection ...................................................
3.2.3 Efficiency ..................................................................................................

103
103
103
106
108
126
128
128
132
142

4

Collision Response .......................................................... .... .......... .... .............. ........... ...
4.1 Characterizing Collisions Geometrically............. ...................... ....... ................. ...
4.1.1 Intersections and Proximities ... ........ ..................... ...... ..............................
4.1.2 Collisions and Surface Orientation............................................................
4.2 Implementing Collision Response ........................................................................
4.2.l Collision Response on Polygonal Meshes .................................................
4.2.2 Collision Models ...................... ...... ...... ........ .................... ... ......................
4.3 Constraints & Seaming .........................................................................................
4.3.1 Elastics to Bring Objects Together ............................................................
4.3.2 Controlling the Elastic Effect ....................................................................
4.3.3 Applications ...............................................................................................

145
145
146
150
155
156
160
174
175
176
182

5

Smoothing & Wrinkles..................................................................................................
5.1 Multilayer Models.................................. ................................ .... ............ ...............
5.2 A Simple Geometrical Interpolation Algorithm ...................................................
5.2.1 The Problem ..............................................................................................
5.2.2 Constructing the Surface ...........................................................................
5.2.3 Results .......................................................................................................
5.2.4 Texture as a Height Field ..........................................................................
5.2.5 Modulating Wrinkle Amplitude ................................................................
5.2.6 Multilayer Wrinkle Textures .....................................................................

185
185
187
187
188
193
195
196
199

Table of Contents

IX

5.2.7 Rendering Wrinkles .................................................................................. 202
5.2.8 Applications .............................................................................................. 203
6

Rendering Garments.....................................................................................................
6.1 Rendering Techniques ......... .... ............... ............................ ......... ........ ......... .... ....
6.1.1 Visualization Principles ................ .................. .......... ......... ........ ...............
6.1.2 Rendering Systems....................................................................................
6.2 Rendering Textiles ...............................................................................................
6.2.1 Anisotropic Lighting of Textiles ...............................................................
6.2.2 Volumetric Textile Models ............... ........ ...... ............ ....... .......................
6.2.3 Rendering Choices for Realistic Garments .................. ............ .................

207
207
207
220
224
224
226
227

7

The MIRACloth Software............ ...... .................... ...................... ......... .............. ...... ....
7.1 Introduction..........................................................................................................
7.2 Approach..............................................................................................................
7.2.1 Design of Garment Patterns ...... ............................ ............. ..... ........ ..........
7.2.2 Putting Patterns on Bodies ........................................................................
7.2.3 Seaming and Constructing Garments ........................................................
7.2.4 Animation of Garments .......... ...... ...... ......................... ................. .............
7.2.5 Defining the Garment Materials and Textures ..........................................
7.2.6 Cutting and Modifications ........................................................................
7.3 Software Description ............................................................................................
7.3.1 Program Features ......................................................................................
7.3.2 Interface Description.................................................................................
7.3.3 V.R. Manipulation Tools ..........................................................................
7.4 MIRACloth at Work .............................................................................................
7.4.1 Versatile Fabric Simulation ......................................................................
7.4.2 Computer Films and Fashion Shows ........................................................
7.4.3 Model Design ............................................................................................
7.4.4 Garment Prototyping .................................................................................

231
231
234
234
235
237
239
242
242
243
243
245
248
249
250
253
256
257

8

Potential Applications................................................................................................... 261

Bibliography.......................... ................................. ...... ........................... ..... ...... .... ............. 263

1 Introduction

In this book, we investigate the problem of simulating clothes and clothing. A range of topics
are addressed, from shape modeling of a piece of cloth to the realistic garments on virtual
humans. Different situations demand different properties a cloth. Existing solutions, though
useful for many applications, reveal that further improvements are required.
Cloth modeling has been a topic of research in the textile mechanics and engineering
communities for a very long time. However, in the mid 1980s, researchers in computer
graphics also became interested in modeling cloth in order to include it in the 3D computergenerated images and films. The evolution of cloth modeling and garment simulation in
computer graphics indicates that it has grown from basic shape modeling to the modeling of
its complex physics and behaviors. Chapter 2 provides a summary of the different methods
developed in computer graphics over the last 15 to 20 years. In computer graphics, only the
macroscopic properties of the cloth surface are considered. Physical accuracy is given less
importance in comparison to the visual realism. However, a trend of employing a multidisciplinary approach has started, and the community of textile engineering and computer
graphics have begun to combine their expertise to come up with solutions that can satisfy that
of both communities. While the textile engineering offers precise details of modeling cloth, at
a microscopic level, the computer graphics provides the framework for animation and visualization. Since it is difficult to cover all the methods with adequate details in the book, additional details of the modeling of cloth and garment simulation have been included for the
MlRACloth system as a case study. The current techniques in computer graphics enable the
simulation of a piece of cloth, as well as a complete set of garments with the interaction with
their environment.
The different schemes of collision detection are presented in Chapter 3. Collision detection and response is an integral part of cloth simulation. Collision determines the contact of
the cloth with its environment, as in the case of a garment in contact with the body. Thus,
collision detection is an extremely important aspect of cloth simulation, taking into account
the cloth's interaction with other objects. Collision response determines the feedback to the
collision, which may depend on friction and other physical phenomena. Collision detection is
P. Volino et al., Virtual Clothing
© Springer-Verlag Berlin Heidelberg 2000

2

1 Introduction

conceived as geometrical processing in order to find potential interpenetration of the regions
or individual elements of the corresponding surfaces. The methods to optimize the processes
for both collision with other objects and self-collision are also studied. An efficient algorithm
for collision detection for polygonal mesh representing cloth surface, is detailed with special
attention to the issues relating to self-collision which is the employing of a curvature criteria
to help resolve the problem of "false adjacency". For collision response, a hybrid model is
described where the geometrical basis (e.g., proximity) is used to determine the nature of the
response. The notion of friction is added without affecting the efficiency of the mechanical
simulation.
Seaming is another kind of constraint, which is required during mechanical simulation to
construct a complete garment from the 20 patterns. The notion of "elastic" or "elastic lines"
is used to join the points of the pattern boundaries collectively or individually. It is like putting some attraction forces between the boundaries to be joined or stitched.
For rendering clothes, many of the simulation models use classical rendering packages or
modules. Not much research has been undertaken exclusively on the rendering of materials
like cloth. We briefly present some conventional rendering methods, which are commonly
used in cloth simulations. Some particular methods for rendering anisotropic reflections, the
microscopic structures and weaving styles are also discussed. This book gives a limited coverage of the rendering within its present scope. However, we believe that the rendering of
cloth requires special attention.

In order to further enhance the realism of cloth modeling, finer wrinkles are added. These
wrinkles are not computed as the surface deformation based on physics, but instead these are
created using the prescribed perturbation to the geometrical information - surface normal. In
this way, we avoid the overheads on both the computation and the data.
A separate chapter is devoted to MIRACloth, a system developed at MIRALab, University
of Geneva, for building and animating the garments on virtual actors. In fact, it is a general
animation framework where different types of animation can be associated with the different
objects - static, rigid, and deformable (key frame, mechanical simulation). The methodology
for building garments relies on the traditional garment design in real-life. The 20 patterns are
created through a polygon editor, which are then taken to the 3D simulator and placed around
the body of a virtual actor. The process of seaming brings the patterns together. The garment
can be animated with a moving virtual actor. Many applications are shown: the production of
computer generated films, web based production suitable for E-commerce, and computer
aided garments design.

1.1 A Brief Historical Background

3

Cloth modeling and simulation have attained some maturity in computer graphics research. However, there is a gap between what can be simulated and what is reality. This offers ways and avenues for the future. Further, with different types of applications, different
demands emerge. For example, for a virtual reality system, the realism and the accuracy can
be compromised to achieve a fast interactivity while for a CAD type system, a high degree of
precision and accuracy is a must. And a similar argument holds for the animation. Therefore,
the question is whether or not it is possible to build a multiresolution system (or a system
with different levels of details) that would allow the automatic adjustment to the context of
the system to be used. There has been some cross fertilization between textile engineering
and computer graphics modeling methods, but we still have far to go before we can seamlessly blend the two aspects of modeling - macroscopic and microscopic. This encourages
the employment of a multidisciplinary approach in cloth modeling research. Like many areas,
the fundamental research in cloth modeling evolved from the university environment where
the interest lies in experimenting some ideas and approaches. Recently, it has been an interest
of industry to bring to production these prototypes and to distribute them to the concerned
users. We hope this trend will continue.
This book introduces the problems and their solutions in cloth modeling and simulation. A
collection of foundations which we consider important in this area are included. Historical
evolution along with the state-of-the-art methods with examples are provided, which we believe will help the readers to understand the problem with its different components and their
plausible solutions.
The book is the result of the contributions from the authors and the work of others on the
important topic of cloth modeling or simulation. The authors hope and believe that the book
will help interested beginners to start their research in the area and motivate researchers and
developers in this area to further innovations.

1.1 A Brief Historical Background
Clothes synthesis has gone through several phases. First since it is basic to everything else,
the most important was the determination of the mechanical properties of the fabric. Originally, the research in this area was directed to applications in industrial and manufacturing
processes. The reference study, dating back to 1975, gave the experimental values for the

4

1 Introduction

main mechanical parameters of the fabric in terms of the behavioral curves, known as Kawabata curves. With these, the fabric could be modeled as a deformable surface exhibiting various properties, such as elasticity, viscosity and plasticity. Once the mechanical behavior was
characterized, several techniques were developed to reproduce this behavior in computer
models. The simplest approach consists of geometrically characterizing the shape of cloth
and submitting it to mechanical constraints. The earliest trials in the mid 1980s featured simple rectangular pieces of fabric hanging from two fixed points or falling onto rigid objects.
The techniques ranged from curve-fitting and spline approximation to the use of sweep surfaces, and the mechanical constraints included gravity, stretching and bending.
In 1987, Terzopoulos et al. proposed a new model for fabric behavior. The idea was to use
a physically-based simulation engine, relying on the Lagrange equations of motion and elastic-surface energy. The solutions were obtained through the finite-difference schemes on
regular grids. This allowed, for example, the accurate simulation of a flag or the draping of a
rectangular cloth, and the method could distinguish cloth from stiff materials like metal or
plastic.
The second phase focused on the specific aspects of clothes deformation, as in wrinkles
for example. In the early 1990s, Aono proposed a model for simulating the propagation of
wrinkles. Based on elasticity properties and d'Alembert's principle, the model accurately generated wrinkles in a piece of fabric, but was unable to model the draping of the clothes in
more complex contexts, such as during collision. Several other investigations took the finite
element approach: for regular shapes made up of a few hundred elements, results can be very
precise. However, this technology requires excessive computation time for complex shapes,
and unfortunately, garments inherently have complex shapes, and their geometries do not
adapt naturally to the formalism of finite elements.
A new trend has been to exploit the particle systems. These are also physically-based, but
are lighter and less computationally expensivelintensive than the Lagrangian models. A particle system can be described as a set of particles interacting with each other according to
certain laws imposed by the problem. A particle system offers a viable solution to a problem
if the change in the position of an element is known and the properties of its neighboring
elements. One can observe such a system in various contexts from molecular dynamics to the
calculation of colliding galaxies.
In chapter 2, we present some major cloth simulation models with their salient features.
Ng and Grimsdale [HNG96] provide a good summary of these models. They categorize the
models into three types: geometrical, physical, and hybrid. Geometrical techniques model the

1.2 Problems

5

shape of the cloth without taking into account the cloth properties. Although these do not
give realistic simulation, they are easy to compute. The physically-based techniques require
solving a set of differential equations or a process of iteration, to find the state of the minimum energy. These may be computationally expensive (i.e., may require minutes to days to
compute a small animation). However, these techniques should have an intuitive meaning
and the control of the parameters, (e.g., specifying a larger mass will make the cloth look
heavier). The hybrid methods combine the speed of geometrical methods and the improved
realism of the physical techniques. A rough shape is determined using the geometrical
method, and later refined using a physically based method. Most of the available methods in
computer graphics attempt to model the macroscopic behavior of a cloth. This is primarily
because of the set goals - to simulate cloth behavior rapidly with a reasonable realism. Secondly, representing each thread of cloth with its properties would be far too expensive to
model. However, a cross-fertilization of the research in animation and textile engineering
may give rise to the models which could be useful for both communities.

1.2 Problems
Cloth simulation and garment animation raise diverse scientific questions: not just the development of a technique or algorithm for solving a single kind of problem. They require a
whole set of advances in a variety of fields: mechanical simulation, collision detection, geometric modeling, interactivity and others. There are many issues involved in the modeling
and simulation of cloth. These issues are presented in a general sense. Later in the ensuing
chapters, these issues are elaborated and discussed with appropriate examples.

1.2.1 Shape and Geometry
Shape is one of the most important clue in the simulation, particularly when visualization is a
means to validate the simulation. For cloth simulation and garment design, like for other objects, one needs to answer the question: what is the best way to represent the shape of the
object? There exist different ways to represent the shape and the geometry of objects in computer graphics: polygonal representation, high order surface representation such as parametric
surfaces, and CSG, etc. The choice of the representation may not only have to consider the

6

1 Introduction

shape alone in a static and passive environment, but may also have to investigate what kind
of behavior is being modeled, what the computational requirements of the simulation are,
what the details to be shown are, and what rendering method is to be employed. For example,
a mere representation of the form of a static garment or a piece of cloth may not be adequate
when we also want its movement, folds and wrinkles. In fact since a cloth is flexible, it can
attain different shapes in different situations, meaning it doesn't have a fixed shape. This suggests that the tools for modeling rigid objects (classical geometrical modeler) may not satisfy
the needs of cloth modeling. In Chapter 2, we further explore the suitable geometrical representation of a cloth surface. Although one can envisage a cloth as a woven material with
threads of primitives and therefore, the geometry of cloth being constituted by the shape and
geometry of threads, for the current modeling tools, representing (or displaying) cloth as a
thin surface is inadequate.

1.2.2 Behavior
In the real life situations, we notice the behavior of a cloth under different conditions, for example, as in flowing robes, draping, cloth folds, crumpling, tearing, etc. The behavior of a
cloth is the manifestation of various properties of the cloth's material such as Young's
modulus, bending modulus, Poisson's ratio, stress-strain curves, load-extension relationship,
etc. Therefore, cloth simulation needs the study and analysis of these properties. Fundamental laws of mechanics are used for observing the behavior, e.g., the law of gravitation. An
extended study of the behavior of the cloth with different models of its behavior is given in
Chapter 2.

1.2.3 Interaction with Environment
Cloth in isolation has limited sense. A cloth's behavior is revealed as a consequence of interaction with its environment. This environment could be the wind - a piece of cloth looks very
different in the wind - or other rigid or flexible objects causing collisions with the cloth. It is
necessary to include these aspects into the modeling phase. The detection of collision of cloth
with other objects or with itself is one important issue, and how the cloth reacts or responds
to the collision is another issue. Very often we notice that the shape of the cloth touching an
object, is different from where it is not. Collision detection and its response is an integral part

1.2 Problems

7

of cloth simulation. The point is to decide which is the most appropriate, accurate and computationally tractable method.

1.2.4 From Cloth to Garment
One important application of cloth is in making garments. In reality, a garment is an assembly of different pieces of fabrics. Similar methodology is needed to be developed in the virtual world where different pieces of clothes can be stitched. Such actions can be conceived as
the constraints to the model of clothing. In addition, these garments are then worn by virtual
actors who can move. This requires the garment to follow the shape and movements of the
virtual actor's body. Building a system which supports garments design for virtual actors,
also necessitates the consideration of the issues of user interface and interaction, and the
user's perspective. Chapter 6 is devoted to addressing many such issues in conceiving and
building such a system.

1.2.5 Rendering
The problem of rendering is still being explored. Not much has appeared in the literature on
the issues about the rendering of clothes in particular. The methods adapted are generally the
classical shading models. Yasuda et al. [YAS 92] have reported a shading model for cloth
objects, where they consider anisotropic reflection that accounts for the microscopic textile
structure and weaving style. Since the main emphasis of this book is on simulating the behavior of cloth and clothing, we consider that rendering does not lie within the scope of this
book. However, some of the recent activities related to adding details like small and fine
wrinkles to cloth without the overhead of computation have been included in the chapter on
wrinkles. In fact, the latter still remains more of a modeling issue as opposed to a rendering
Issue.

8

1 Introduction

1.3 Garment Design and Simulation System: An Example
The advances in technology, computing power and cloth simulation research led to the next
step. Now that simulating simple rectangular pieces of garment is possible, the challenge is to
find a way to create a complex garment. This requires dedicated methodology and software.
As for dressing virtual actors, one approach is to extract garments directly from the shape of
the body, based on the interpolation between points selected on the body. However, the most
intuitive and natural approach takes its inspiration from the traditional garment industry,
where garments are created from two-dimensional patterns and then seamed together. The
pioneers in this field, Lafleur et al. [LAF 91], Yang and Magnenat-Thalmann [YAN 91],
Carignan et al. [CAR 92], have been undertaking studies in this direction since the early
1990s.
We briefly outline here the system conceived and developed in MIRALab, University of
Geneva, for garment design and cloth simulation. This is to demonstrate a case study for illustrating the ideas, concepts and methodologies for building such a system. There are now
other systems based on similar ideas, some of which are listed in the Appendix.
Such a system contains different components and modules (Fig. 1.1). The system has two
software components: an editor to design garment patterns and a 3D garment simulator.
There are several modules in each component. In particular the 3D simulator has the modules
for mechanical model, collision engine, rendering, and user interaction. Within the 3D simulation, user specification and interventions are required for various tasks - positioning of
patterns, setting material and physical parameters, seaming and assembling of garments,
animation, and cutting and modifying the garment.
As mentioned earlier, the system is inspired by what happens in reality. The garment is
made from 2D patterns of cloth surfaces. These patterns are constructed through an editor,
which allows the specification of the 2D measures. The patterns constructed are discretized
into a triangular mesh. The planar patterns are then placed around a 3D virtual body using
manipulators. Once the patterns have been placed around the body, a mechanical simulation
is invoked to make the patterns approach along the seaming lines. As a result, the patterns are
attached and seamed on the borders as specified, attaining the shape influenced by the shape
of the body. Thus the garment is constructed around the body. The mechanical simulation
then gives the animation of the garment on a virtual actor's body, accounting for the collision
response and friction with the body surface. The final visual look of the cloth is displayed
through its material properties. The surface attributes like the material (diffuse) color, shini-

9

1.3 Garment Design and Simulation System: An Example

ness, and texture, which are primarily the rendering parameters, can be defined in the system.
It may be desired that the cloth is cut and then re-stitched to make it fit or adapt to the body
shape after removing or adding the material. The geometric representation of the cloth surface i.e., discretization into polygons guides the processes of cutting, removing, and reconstructing the garment.

( Garment Models

I

( Mechanical Model

Measurements )

Pattern Design System

I

Collisions

Cloth Simulation System
3D Ani mation Interface

2D Design Interface
Garm nt model design
izc adju tment

Database

Pattern 3D po ilion
Pattern eaming
arment 3D edi ti on
Garmen t draping
Garment animation

Fig. 1.1: The garment design and simulation framework.

Modell)review
Interactive an imation
Realistic rendering

2 Simulation Models

At the heart of a cloth simulation system, a mechanical model animates the cloth surfaces so
that they behave like real fabrics.
This chapter first introduces the basic concepts of mechanical simulation, and then describes the different ways of simulating cloth materials. The details are then provided for implementing an efficient simulation system.

2.1 Introduction
Of all the branches of physics, electromagnetism, thermodynamics, quantum physics, relativity and mechanics, only the latter is necessary for the problems of cloth simulation. And
while "classical" mechanics, developed in the 17th and 18th centuries by Newton, Euler and
Laplace, has been extended from the infinitesimal (quantum mechanics) to the very large
scales (relativistic mechanics), cloth is appropriately simulated at neither scales of atoms or
of galaxies. Classical "Newtonian" mechanics is the natural framework for the consideration
of the familiar objects we encounter in everyday life, such as cloth and fabric garments.

2.1.1 Dynamics
The part of mechanics which studies how objects evolve and move in time under the influences of forces and constraints is called dynamics. In kinematics, which is the mathematical
study of motion, three essential quantities are:
•

Position, usually represented by a coordinate vector in 3D space.

P. Volino et al., Virtual Clothing
© Springer-Verlag Berlin Heidelberg 2000

12

2 Simulation Models

•

Velocity, the first-order derivative of position with respect to time.

•

Acceleration, the second-order derivative of position with respect to time.

Dynamics require the consideration of the mass as well as the quantities relating the mass
and the motion of the object:

•

Force, which generates acceleration on objects.

•

Energy, from which forces are derived.

•

Momentum, product of mass and velocity relating the "amount" of material movement.

The fundamental law of dynamics, also known as Newton's second law, is the equality
between acceleration and force divided by mass. This law has various integral or differential
formulations, being applicable to discrete particles as well as to continuous materials.
Other essential components of dynamics include laws of conservation, derived from
Newton's third law, which state that as a system evolves, certain quantities remain constant,
such as total energy and mechanical momentum.
While the movement of an object is locally and globally subject to the laws of dynamics,
additional laws govern the deformations of the object itself. These depend on the properties
of the material the object is made of, for example: elasticity, viscosity and plasticity. The
form of these behavioral laws and the values of their parameters, are obtained mainly from
experiments. Together with the laws of dynamics, they form a complete mechanical model of
the system to be simulated.

2.1.2 Designing a Mechanical Simulation System

2.1.2.1

The Simulation Loop

The aim of mechanical simulation is the virtual reproduction of the mechanical behavior of a
cloth object interacting with its environment. The object only exists as a virtual representation in computer memory. It is described through a geometric representation which models
the shape to a given accuracy. At a given time, the current state of the object is defined by its

13

2.1 Introduction

position and velocity. From these geometrical characteristics, the current deformation state is
computed. The behavioral laws describing the material are then applied on this state to obtain
the current, internal energies and forces exerted on the object, and the possible external
forces and constraints. From this, the evolution of the system is obtained using the laws of
dynamics and mechanical conservation, taking into account the object mass and density. This
evolution is finally integrated to obtain the new state of the object at subsequent times (Fig.
2.1).
A practical mechanical simulation system usually implements the loop described below
for computing the evolution of simulated objects in time.

(

Geometry

Behavioral laws

Object Material

Kinematics

Object Mass

Mathematical
Integration

Fundamental law
of Dynamics
Conservation laws

Fig. 2.1. A simplified view of the componentsofa mechanical system.

2.1.2.2

Components of a Mechanical Simulation System

There are several issues in building up a cloth simulation system:

14

2 Simulation Models

•

Material Analysis: The main mechanical properties of fabric materials and their reactions
to given deformations. (For instance, measuring the elasticity of a fabric sample depending on its elongation).

•

Mechanical Modeling: Approximation of the mechanical behavior by a set of behavioral
laws that can be expressed using analytical and mathematical relations, such as the constraints and deformations of internal forces in the material, with a given set of parameters
that specify the characteristics of the material to be simulated. (For instance, modeling the
elasticity force -elongation relation with a mathematical curve defined by a given set of
parameters) .

•

Geometrical Modeling: Definition of an adequate, geometric representation of the cloth
designed to represent the shape in a given accuracy, using an easily manipulated set of
geometrical data. (For instance, representing a cloth object with a polygonal mesh divided into small triangles).

•

Simulation Scheme: Definition of an efficient, geometric and mathematical framework,
specifying the integration of the mechanical model with the laws of dynamics. (For instance, defining how the elasticity laws will apply on the triangles of the mesh for computing strains, stresses, energies and acceleration on the object surface).

•

Numerical Integration: Implementation of an efficient numerical integration for computing the evolution of the system, using the mechanical laws describing the system. (For instance, using the finite-difference and Runge-Kutta methods to compute the evolution of
the object position from the mechanical values of the surface).

All these issues should be addressed keeping in mind that the quality of a good mechanical system is defined by the tradeoff between accuracy and simulation efficiency, as well as
the robustness necessary for dealing with a wide range of situations.
The issues described above define the structure of this chapter, which deals with the material analysis (Part 1.1), mechanical modeling (Part 2.3), mechanical simulation (Part 1.1), and
numerical integration (Part 1.1).

2.2 Mechanical Properties of Fabric Materials

15

2.2 Mechanical Properties of Fabric Materials
The mechanical properties of a fabric material account for how its reaction to the given stimuli, such as the imposed deformations, constraints, or force patterns. While any number of
parameters may be defined for modeling the behaviors that may occur in some applications, a
standard set of parameters is used for reproducing the most important mechanical characteristics of fabric materials. In this section, the experimental characterization of these parameters is discussed, along with the discussion of fabric materials and an introduction to the theory of elasticity for deformable surfaces.

2.2.1 Fabric Mechanical Parameters
The mechanical behavior of a fabric is inherent to the nature and the molecular structure of
the fiber material constituting the cloth, as well as the way these fibers are arranged in the
fabric structure.
2.2.1.1

Fabric Structure

Fabric fibers in the cloth surface can be organized in several ways. The main structures are as
follows:
•

Woven Fabrics: Threads are orthogonally aligned and interlaced alternately using different patterns (such as plain or twirl) (Fig. 2.2).

•

Knitted fabrics: Threads are curled along a given pattern, and the curls are interlaced on
successive rows (Fig. 2.3).

•

Non-woven fabrics: There are no threads, and the fibers are arranged in an unstructured
way, such as paper fibers.

The woven fabrics are the most commonly used structure in garments. They are relatively
stiff, thin and easily produced, and they may be used in a variety of ways in many kinds of
designs. In contrast, the knitted fabrics are loose and very elastic. They are usually employed
in wool or in underwear.

16

2 Simulation Models

Fig. 2.2. Different woven fabric patterns: Plain, Twirl, Basket, Satin.

Fig. 2.3. Several basic knitted fabric patterns.

The fabric structure greatly influences the mechanical behavior of the fabric material,
which is mainly determined by the following properties:
•

The nature of the fiber: Wool, cotton, synthetic

•

Thread structure: Diameter, internal fiber and yam structure

•

Thread arrangement: Woven or knitted, and particular pattern variation

•

Pattern properties: Tight or loose

These properties are critical to the stiffness, the ability to bend, and the visual appearance
of the material.

2.2.1.2

Basic Mechanical Properties

The mechanical properties of deformable surfaces can be grouped into four main families:
•

Elasticity, which characterizes the internal forces resulting from a given geometrical deformation.

2.2 Mechanical Properties of Fabric Materials

17

•

Viscosity, which includes the internal forces resulting from a given deformation speed.

•

Plasticity, which describes how the properties evolve according to the deformation history.

•

Resilience, which defines the limit at which the structure will break.

A. Working hypotheses
Most important are the elastic properties which contributes mainly to the mechanical effects
in the usual contexts where cloth objects are used. The deformations are often small and slow
enough to make the effect of viscosity, plasticity and resilience insignificant. One major hypothesis is that the quasistatic models in the domain of elastic deformations will suffice for
our models.
Depending on the amplitude of the mechanical phenomena under study, the curves expressing the mechanical properties exhibit shapes of varying complexity. If the amplitude is
small enough, these shapes may be approximated by straight lines. This linear domain hypothesis is a common way to simplify the characterization and modeling of mechanical phenomena.
It is common in elasticity theory to consider that the orientation of the material has no effect on its mechanical properties (isotropy). This, however, is inappropriate for cloth, as its
properties depend considerably on their orientation relative to the fabric thread.

B. Elasticity
Elastic effects can be divided into several parts:
•

Metric elasticity, deformations along the surface plane.

•

Curvature elasticity, deformations orthogonally to the surface plane.

Metric elasticity is the most important and the best studied aspect of fabric elasticity. It is
usually described in terms of strain-stress relations. For linear elasticity, the main laws relating the strain £ to the stress (j involve three parameters:
•

The Young modulus E, summarizing the material's reaction along the deformation direction.

18

2 Simulation Models

•

The Poisson coefficient v, characterizing the material's reaction orthogonal to the deformation direction.

•

The Rigidity modulus G, pertaining to the oblique reactions.

Along the direction i and orthogonal to the direction j, these relations, named Hook's Law,
Poisson Law and Simple Shear Law respectively are expressed as follows:
Vij
1
C u =!i"O"ii Cjj =!i"O"iiCij =~O"ij
I

1

(1)

Ij

Cloth materials are two-dimensional surfaces for which the two-dimensional variants of
the elasticity laws are suitable. They are not isotropic, but the two orthogonal directions defined by the thread orientations can be considered as the main orientations for any deformable properties. In these orthorombic cloth surfaces, the two directions are called warp and
weft, and they have specific Young modulus and Poisson coefficients, Ep, vp and E t , Vt respectively. The elasticity law can be rewritten in terms of these directions as follows:
(2)

The energetic considerations imply the above matrix to be symmetric, and therefore the
products Ep Vt and E t vp are equal. For simulating isotropic materials, we only consider a
single Young modulus E = Ep = E t , and also a single Poisson coefficient v = Vt = vp. The rigidity coefficient G should also be taken equal to E / (1 + v).
A similar formulation can be obtained for the bending elasticity. However the equivalent
of the Poisson coefficient for bending is null. The relation between the curvature strain T and
stress y is expressed using the flexion modulus B and the flexion rigidity K as follows:
(3)

These are the actual parameters that are used in most studies of the properties of fabrics
when dealing with linear elasticity. Their determination is carried out experimentally by performing simple deformations on fabric samples.

2.2 Mechanical Properties of Fabric Materials

19

2.2.2 Experimental Analysis of Fabric Properties
The first formal studies of the elastic properties of fabric materials include, among others,
[PEl 37] [ABB 51] [LOY 54] [CHU 60] [CPR 60] [DAH 61] [BEH 61] [MOR 62] [KIL 63]
[OLO 64] [GRO 66] [CUS 68] [KA W 73] [SKE 76] [GRO 78]. While these are mainly concerned with the metric elasticity, more recent studies have focused on the buckling properties
[DEN 76] [AMI 86] [AMI 89] [AMI 91] [CLA 90] [GOS 90], the behavior of particular fabric materials [LLO 78] [MAN 92] [GON 93] [BAI 95] [VIC 96], and the modeling techniques [KNO 79] [LEA 85] [ANA 91] [CHE 95] [YLA 95] [HUJ 96] [CHE 96].
A reference study used in many computer graphics applications is [KAW 75]. In this paper, different experimental tests are presented for characterizing the main mechanical parameters of the fabric materials, as behavioral curves which can then be approximated analytically and integrated into a mechanical model of the material.

2.2.2.1

The Kawabata Experiments

The Kawabata Evaluation System for Fabric is a reference methodology for the experimental
observation of the elastic properties of a fabric material. Using five experiments, fifteen
curves are obtained, which then allow the determination of twenty-one parameters for the
fabric, among which are all the linear elastic parameters described above, except the Poisson
coefficient.

Fig. 2.4. The tensile test, and the KES-FBI machine.

•

The Tensile Test involves the extension of a standard (5 cm width, 20 cm length) rectangle of cloth material at a constant speed of extension (0.1 cm/s or 0.2 cm/s), with two opposite edges fixed (Fig. 2.4). After the deformation limit is reached, the traction is reversed at the same speed. From this test, the rest elongation (EO), the maximal elongation

20

2 Simulation Models

(EM), the elongation ratio (EMT = EM/EO-I), the traction energy (WT), the recovery energy (WT'), the resilience (RT = WT/WT'), and the linearity (LT = WTlinear/WT) can all
be computed.
•

The Shearing Test is similar to the tensile test, but the movement is performed transversally (Fig. 2.5). From this test, the shearing stiffness (G) taken at 2.5 0 deviation and the
two hysteresis amounts (2HG) taken at 0.5 0 and 5.0 0 deviation, can be computed.

Fig. 2.5. The shearing test, and the KES-FBI machine.

•

The Bending Test involves a thin fabric rectangle (1 cm width, 20 cm length) fixed along
its longest edge (Fig. 2.6). One edge is rotated along its direction and the distance between the two lines of attachment is adjusted to preserve the curvature as being a cylinder
section. From this test, the flexion stiffness (8) at 1 cm curvature radius and the hysteresis (2H8) for the same curvature can be computed.

j
Fig. 2.6. The bending test, and the KES-FB2 machine.

2.2 Mechanical Properties of Fabric Materials

•

21

The Compression Test compresses a cloth sample between a flat surface and a 2 cm2
cylinder (Fig. 2.7). From this test, the rest thickness (TO) for 0.05 KPa pressure, the compressed thickness (TM) for 5 KPa pressure, the compression energy (We) during the
compression, the recover energy (WC), the compressibility ratio (EMC = 1-TM/TO), the
resilience (RC = WC/WC), and the linearity (LC = WClinear/WC) can be computed.

Fig. 2.7. The compression test, and the KES-FB3 machine.

•

The Friction Test measures the roughness and the friction on a fabric surface of constant
tension, using one and ten rods of 0.5 mm section and 5 mm length respectively, applied
with a force of 0.5 N (Fig. 2.8). From this test, the roughness (SMD), the friction coefficient (MIU) and its variation (MMD) between the two cycles can be computed.

Fig. 2.8. The friction test, and the KES-FB4 machine.

Only the first three tests are widely used in the fabric industry, for determining the properties of the fabric in the weft and the warp directions (Fig. 2.9, 2.10, 2.11).

22

2 Simulation Models

TENSILE A-FB mllttl
RT

LT
I.WARP

'.WEFT

t

I

~~

<0'

......

Bi~T

MEMO

SiNS 5 X S

,.J~~~._.~I!:. y~jJ.~. ~.~ :;:._.

..................

~'J::~'l,J'tI~1

...........

{xS "WT)

MEA"

IX 5 .. WT')

X.

0.1"_

ITEMS.RATE

O.'-llft

.00

200

100

.-- --~-

//

/

/

10

E

(STRAIN).

11

~

KES STANDARD CKAItT

A-FB-l

Fig. 2.9. Experimental Kawabata curves for the tensile test.

SHEAR A-FB1tl\.Htl
15

I

I. WARP

2.WEFT

MEAN

2HG<af/.. l

I

2HGS (ef''')

I

-10

-_.
I."ARP

-15

UlEFT

.-,,
.,
-,

SENS
J.'f

51.,.

oj{
OH·
O,b
~1-

H~I .• (

''''.S·
o,~

•

<>'"
C\,S'
o)~S'

I'

K,lt.
'''5"

A.
) OS'

.;.

x:
y:

MEN?

2XS

btri,_
O,2vl_

O.2V/5

m.~

2:il3rr-

F.
f,

vi.
KES STANDARD CHART

A-FB-3

Fig. 2.10. Experimental Kawabata curves for the shearing test.

2.2 Mechanical Properties of Fabric Materials

23

..,

BENDING A-FB d11l1lt1t

'.3

12.:::ri.

l.:~:~.

'.2

MEAN

B

I

111· .. '1..)

!-----------~

2HB

I

-3

-2

K.

~

.•

-

(,.t ... ',,)

2
SENS
I'Y

X:

V:

2Xl

1I««4ot._.
O.2v/_

M¥J. C.)'l..

MEMO

-0.2
Slop,

-0.3

I. WARP
BEND
:l.W£FT
BEND.

-0.4

+K

..!Y:

-K

2"

+K

.A.~'l

-I"

J\)zS'

o.~

L- ____________

KES STANDARD CHART

A-FB-2

Fig. 2.11. Experimental Kawabata curves for the bending test.

2.2.2.2

Some Mechanical Properties

For a plain wool-polyester fabric of 125 g/m2 density, experimental tests yield the following
approximate values:

Young modulus, Warp
Young modulus, Weft
Young modulus, diagonal
Rigidity modulus
Poisson coefficient, Warp
Poisson coefficient, Weft
Flexion modulus, Warp
Flexion modulus, Weft
Flexion modulus, diagonal
Flexion rigidity

3600 N/m
3200 N/m
1200 N/m
35 N/m
0.18
0.16
5.1 ~Nm
4.4 ~Nm
3.7 ~Nm
1.5 ~Nm

While high variations may be observed between different fabric materials, and particularly
for knitted fabrics, these values constitute "average" values for common fabric types. However, for most common fabric materials, the following ranges are observed:

24

2 Simulation Models

Young modulus, Warp
Young modulus, Weft
Rigidity modulus
Flexion modulus, Warp
Flexion modulus, Weft

.

2000-6000 N/m
1000-5000 N/m
20-60 N/m
5-15 ~Nm
4-10~Nm

210

Fig. 2.12. Typical variation of the Young modulus for woven fabric according to the angle.

2.2.2.3

Other Experiments

While Kawabata measurements and similar systems summarize the basic mechanical behaviors of a fabric material, the visual deformations of cloth, such as buckling and wrinkling, are
a complex combination of these parameters with other subtle behaviors that cannot be characterized and measured directly.
In order to take these effects into account, other tests focus on a more complex deformations. Among them, the draping test considers a cloth disk of a given diameter, draped onto a
smaller horizontal disc surface. The edge of the cloth will fall around the support and produce wrinkling. The number and depth of the wrinkles can be measured and used as the validation test for simulation models.
Tests have also been devised for measuring other complex deformations of a fabric material, mostly related to the bending, creasing and wrinkling.

2.3 Implementing Mechanical Models

25

2.3 Implementing Mechanical Models
The mechanical behavior of a fabric can be studied experimentally on the fabric samples, as
presented in the previous section. Curves of various physical properties are thus obtained.
The most important parameters are the Young's modulus which measures the elongation, the
elasticity, and the flexion modulus measuring the ease with which the material can be bent.
Other parameters representing a more complex, mechanical effects can also be defined and
measured. No matter how much data of this type is available, however, for carrying out
simulations, a precise analytic description is needed, which for the internal forces of a material usually models constraint-deformation relations. This formalization is the topic of
Part 2.3.1.
These relations can then be combined with the universal laws of mechanics to obtain the
equations governing the evolution of the mechanical system, to be discussed in Part 2.3.2.
The solution of this analytical system can be carried out using various schemes, as described
in Part 2.3.3.

2.3.1 Defining Behavior Laws
In order to proceed to a formal simulation of an object, its mechanical behavior must be simplified to its most relevant parameters and expressed as a set of relations among the geometrical and mechanical values of the material that can be easily manipulated: the mechanical
model.
2.3.1.1

The Mechanical Parameters

For cloth simulation, only the major elasticity parameters are retained:
•

Young modulus, the main elasticity parameter.

•

Rigidity modulus, expressing the shearing rigidity.

•

Poisson coefficient, significant for highly stretched cloth.

•

Curvature modulus, measuring the ability to wrinkle.

26

2 Simulation Models

These are quasi-static parameters, meaning that their values do not depend on the actual
deformation speed. However, a rapid movement can be taken into account, such as in the
case of the fabric significantly elongated and then suddenly released. In this situation, the energy dissipation in the deforming material can be significant, producing additional constraints
opposing to the motion. Such viscosity effects are negligible for simulations of small and
slow deformations, such as the draping problems, but should be considered for highly dynamic situations involving the constraint discontinuities on the material.
Viscosity parameters are defined in the same way as the elasticity parameters, but depend
on the rate of change of the strain rather than on the strain itself. They have not been studied
much by the cloth industry as they are not relevant to the most applications that do not involve transitory motion of the cloth. For mechanical simulation however, they are needed, as
reaching the stability in the simulation implies the passing through all the stages of the transitory motion. And the viscosity is essential for dissipating mechanical energy to reach equilibrium. The major viscosity parameters are defined for elongation, shearing and bending deformations, and they generally create efforts that oppose the corresponding motion.

Finally, some highly deformed materials do not return to their initial equilibrium point if a
large deformation has been applied and then released. Plasticity also dissipates mechanical
energy and materializes itself as a hysteresis phenomena in the property curves when the deformation increases and then decreases. While the deformation does not usually require plasticity as it remains within the ranges where such phenomena can be neglected, applications
requiring large deformations should take them into account.

2.3.1.2

Mechanical Modeling

The parameters outlined above describe the curves that must be reproduced in the mechanical
simulation system. However, storing the whole curve for each parameter is usually not suitable, as the amount of data is huge and the complexity of handling it in mathematical expressions is inconvenient. Any additional accuracy to be expected from the use of exact curve
would be dwarfed by the inaccuracy inherent in the numerical simulation process.
A simplified mechanical model is obtained by reducing these curves into simple mathematical expressions. Depending on the desired accuracy, several methods are available:

2.3 Implementing Mechanical Models

27

•

A linear model, in which the property is proportional to the deformation. These models
involve only one coefficient for each property and are the simplest to work with. Linear
models are usually applicable when deformations remain small.

•

A polynomial model, where the property is represented by a higher order function, represented by the corresponding coefficients. These models are suitable for deformations of
greater amplitude and remain relatively simple to handle in mathematical expressions.

•

An interval model, where the curve expressing the property is approximated over successive intervals, usually as linear, sometimes as higher order spline curves. These models
are suited for highly nonlinear properties containing important discontinuities.

•

A discrete model, where the curve is completely discretized and stored in a data table, for
a high accuracy. This is seldom of interest for cloth simulation models.

The choice of representation depends on the accuracy required, the expected deformation
range, and the kind and the amount of mathematical operations expected to be applied to this
data. For instance, while the derivative of a linear function is the coefficient itself, computing
the derivative of an interval or of a discrete model may be much more complex.
2.3.1.3

Environmental Parameters

A simulated cloth has to interact with its environment. The most obvious external force exerted on the cloth is the universal gravity, which acts as to accelerate the cloth towards the
ground. This acceleration is usually 9.8 m/s 2 . Gravity cannot be neglected in usual cloth
simulation contexts.
Aerodynamic effects result from the interaction between the cloth and the surrounding air.
These interactions are usually modeled as the viscosity forces proportional to the speed difference between the cloth and the air, and depend on the local surface orientation. These
forces are also highly dependant on the actual shape of the cloth, as well as on all the possible aerodynamic turbulences arising at any distance of the surface.
Aerodynamic effects usually cannot be neglected for a freely moving cloth, which is light
compared to the airflow forces. While a full aerodynamic simulation of the cloth including
the motion of the air in the surrounding environment, is very difficult to compute, it is usually sufficient to implement the simple, linear, anisotropic, viscosity forces exerted on the
cloth surface. These are only a very rough representation of reality, but practically their ef-

28

2 Simulation Models

fects during the cloth movement attains a good degree of visual realism including the dynamic air draping. For a more rapidly moving air, such as wind, varying the airflow speed
according to the pseudo-random functions with adjusted variation frequencies, can simulate
the turbulence effects in a visually realistic way.
Clothes, however, do not generally move freely in the air. Garments are usually worn by
bodies, and their shape is determined mainly by the contact and interaction with the underlying surfaces. These forces are usually taken into account when dealing with the collision
response between simulated objects, and are essential for all simulations involving virtual
garments on synthetic virtual characters.
Collision forces include reaction forces acting in the direction orthogonal to the contact
surface and preventing the interpenetration of the objects. The tangential component is usually a dissipative force opposing the speed difference between the objects. This friction force
is also highly nonlinear. It is essential to include the reaction and the friction forces in the
simulation of garments since they are worn particularly when motion is involved.

2.3.2 Fundamental Laws of Mechanics
Whatever is the mechanical model representing a cloth, its evolution is governed by the fundamental laws which apply universally to the simulation systems. These laws must be combined with the relations modeling the behavior of materials described in the previous section
to obtain the analytic expressions for the evolution of the mechanical system. For everydaysized objects, such as those in cloth simulation, the rules of classical (Newtonian) mechanics
are good approximations for these universal laws.

2.3.2.1

Newton's Law

The main law of dynamics relates the force exerted on a point mass to its acceleration. Newton's Second Law is usually formulated as follows:
d2 x
f(t)=m dt 2
Where x is the position of the point mass and f is the sum of the forces applied to it.

(1)

2.3 Implementing Mechanical Models

29

This law can be extended to non-point masses by considering the resultant action on the
mass center and the rotational momentum around it.
Newton's Second Law may also be used to describe to local notion of an infinitesimal
particle. The forces exerted on this element include the external forces as well as the internal
forces resulting from the deformations of the material. From such representation, we can derive the Lagrange equations.

2.3.2.2

Conservation Laws

Dynamic properties evolve in predictable ways. Derived from Newton's law, conservation
laws apply to motion, rotational momentum, and mechanical energy.
Energy conservation implies that in a given mechanical system, the internal energy
evolves according to the work of the external forces exerted on that system. For a purely mechanical system, energy is made up of potential energy resulting from the work of the internal conservative forces and kinetic energy resulting from the speed of the material mass.
Internal mechanical energy may also be dissipated by non-conservative forces, such as
viscosity or plasticity effects. Dissipated mechanical energy is usually turned into thermal
energy. More marginally, other energy forms, such as chemical energy or electromagnetic
energy, can be converted into mechanical energy, but this is unlikely in the case of cloth
simulation.
Conservation of mechanical momentum is another aspect of mechanical conservation deriving from Newton's law. Its main effects in a mechanical system on which no external
forces are acting, are the conservation of motion momentum (the total mass of the system
times the speed of its mass center) and rotational momentum (the inertia momentum of the
system around its mass center times the angular rotation speed).
These laws manifest themselves in collision problems, where they must be respected
whatever the collision configuration and the amount of mechanical energy dissipated in it
may be.

30

2 Simulation Models

2.3.3 Defining a Simulation Scheme
In implementing a mechanical simulation system, the behavioral laws of the material have to
be combined with the mechanical laws in a single framework that works on an appropriate
geometrical representation of the mechanical entities to be simulated.

2.3.3.1

Numerical Simulation

Combining the equations of material behavior with mechanical laws yields complex systems
of mathematical equations, usually partial differential equations or other types of differential
systems. Mathematics provide analytical solutions only for a limited class of simple equations, which would only solve very elementary situations involving simple models, and
which have no interest for usual cloth simulation contexts. For complex cloth simulations,
such solutions are not available, and the only practical solution is to implement numerical
methods.
The numerical solution of a system of differential equations requires discretization and
explicit computation of the physical values at precise points in space and time. Space discretization can either be accomplished through numerical solution techniques, such as in models
derived from continuum mechanics, or be part of the mechanical model itself, as in the particle system models. Time discretization results from the numerical computation of a sequence
of states during the time period. Interpolation of the successive states provides an approximation for the entire trajectory.
There are several schemes for performing mechanical simulation, differing mainly on
where the discretization takes place in the process. The two major families are the following:

•

Continuum mechanics, which studies the state of material surfaces and volumes through
quantities varying continuously in space and time. Each physical parameter of the material is represented by a scalar or vector value continuously varying with position and
time. Mechanical laws can then be represented as a set of partial differential equations
which hold throughout the volume of the material. While the mechanical representation
of the object only depends on the model itself, numerical resolution often requires the
discretization of the equations in the volume space.

•

Particle systems, which discretize the material itself as a set of point masses ("particles")
that interact with a set of "forces" which approximately model the behavior of the material.

31

2.3 Implementing Mechanical Models

Particle Systems

-f\
Simul ated objccll1lOtlc I

L

.

J1

Discrete geomelrical representation

~

D,screte
------.!!.echan Ical ,I fodellsall on____

-.......

~
Connnuum
MechanIcal .lfodellsarlO:'-

f

L

L

Discrt:le mechanic:ll Inodel

r----

-

Numerical Int~gra"on

Conti uuouS mechanical model

•
Continuum Mechanics

~

\,../1
~olution

Fig. 2.13 . A mechanical simulation carried out with particle systems and continuum mechanics.

The difference between these two schemes is that a particle system is a discrete model
built on a related discrete surface representation, whereas continuum mechanics define a
continuous model which is then discretized.
Aside from these mechanical simulation techniques, we can also define geometrical
simulation techniques which, instead of computing the system position and evolution using
mechanical laws, only attempt to reproduce it in a realistic way by imitating the expected
phenomena geometrically. While such models are unable to deal with "unexpected situations" for which the result has not been explicitly foreseen, they can be efficient for limited
contexts for which the object deformations are deterministic within a well-defined range, using very little computation.

2.3.3.2

Geometrical Cloth Surface Representations

Geometrical discretization is a necessity, not only because numerical solution requires discrete data, but also because it is a convenient way to describe the shape and the motion of the
cloth as a compact and easy-to-manipulate set of data.

In order to simulate cloth efficiently, a good structural framework for describing its geometry is needed. This description must be accurate enough to capture all the significant details of the geometry, while minimizing the total amount of geometrical data to be handled.

32

2 Simulation Models

These data should also be efficiently accessible so that they can be integrated into a mechanical model and into an animation system.

A. Polygonal Meshes
The polygonal mesh is the simplest data structure for representing geometrical surfaces. The
surface is discretized into flat polygons, separated by edges, themselves connected by vertices. The vertices are associated with discrete positions representing the sampled geometry.
The topological structure of a polygonal mesh corresponds to a locally planar graph.
For a flat surface, the polygons serve to subdivide it into different regions which may have
different properties or functions. For curved 3D surfaces, polygons are necessary for rendering the curvature through discretization. The size and shape of the polygons are chosen to
correspond to the desired accuracy of the representation of the "ideal", smoothly curved surface. The smaller the polygons, the more accurate the mesh, but also the more data are
needed to represent them.
Several kinds of polygonal mesh can be defined. While the most general meshes may be
made up of any kind of polygons, it is often useful to restrict them to contain only triangles
or quadrangles. This may be useful in performing certain geometrical computations on the
mesh elements For example, mechanical computations, use the same formula designed specifically for elements of the given fixed topology.
While it is possible to work with meshes having irregular structures (unstructured
meshes), imposing the condition of a constant number of edges around each vertex leads to
regular meshes, having a globally constant topology. Regular meshes can be triangular (six
edges per vertex), quadrangular (four edges per vertex), or hexagonal (three edges per vertex). These meshes allow us to take advantage of the local symmetries in performing geometrical computations. Furthermore, global numbering and indexing schemes can be established
in order to provide random access to any element in the mesh without performing search or
traversal operations.
Along with these topologically regular properties, geometric properties may be considered
as well. A mesh is geometrically and perfectly regular when its elements have all the same
shape and size. Strictly speaking, this is only possible for topologically regular meshes. For
irregular meshes, if rough size and shape uniformity is feasible, then a degree of geometrical

2.3 Implementing Mechanical Models

33

regularity can be attained. This geometrical regularity allows to factorize certain geometrical
calculations in the mesh.
Mesh anisotropy prevails when global, geometrical properties vary depending on the direction of the mesh surface. Elongated mesh elements are the major cause of anisotropy.
However, regular meshes may also be considered as anisotropic, since global element alignments represent "preferred" directions on the mesh.
Polygonal meshes may be deformed simply by moving their vertices to the new surface
positions. This "direct access" to the surface geometry makes working with polygonal mesh
animations simple and straightforward. However, describing a smoothly curved surface
needs some geometrical consistency and regularity among several vertices, which can be difficult to maintain. Furthermore, extracting certain geometrical properties, such as curvature,
cannot be carried out precisely, and has to be done by approximation between several mesh
elements.

Fig. 2.14. A garment represented as a polygonal mesh (triangular, unstructured, globally anisotropic).

34

2 Simulation Models

B. High-Order Surfaces
In order to reduce the amount of geometrical data to be managed for describing a smoothly
curved surface, high-order surfaces can be used. They are described by curved surface primitives that fit given curvatures more accurately. A curved surface is described by a set of
curved patches, with a reduced number of control points carrying the geometrical information.
The patches may be described by explicit or implicit mathematical expressions which
have various curvature and continuity properties. Among them, spline and Bezier patches,
NURBS, polynomial and rational surfaces, and many of their variations. The patches may
also be defined implicitly by a subdivision algorithm which constructs intermediate points
hierarchically through a geometrical construction until a given accuracy has been reached.
The definition of the patches generally requires that they have a given topology, such as
being triangular or quadrangular. Surface continuity between the patches has also to be
maintained.
While only a reduced number of control points are required to control the shape of the surface, it is much more difficult to control the global shape since each control point implicitly
controls a whole surface region. The higher the order is, the fewer control points are required,
but the more difficult it is to control the surface and to render sharp and irregular details that
do not fit the smooth curvature of a patch. Most of these representations also usually determine an implicitly defined polygonal mesh which is needed for most operations requiring explicit geometrical data, such as visualization and rendering.
For mechanical simulation, one major interest of high-order surface is that curvature is
contained in the patches and can be computed analytically from the patch parameters. This
eases the definition of continuum model systems which can directly consider this curvature
for the computing bending energies and forces.

c.

Hierarchical and Progressive Meshes
In order to overcome the limitations of the previous techniques for highly variable contexts
where portions of the mesh may be almost flat, interspersed with highly curved portions, or
with irregular and sharp deformations, an adaptive topology is often required.
The best approach is to subdivide the mesh adaptively, depending on the surface curvature
and acceptable geometrical error of the mesh representation. Different "levels of detail" may

2.4 Mechanical Simulation Systems

35

be considered, either upward by grouping bigger polygons into bigger and rougher domains,
or downward by subdividing mesh polygons into smaller ones.
Hierarchical schemes may be applied on any surface description, either directly on polygonal meshes, or on the patches of a high-order description. For the latter case, subdivision
schemes can efficiently be integrated into a hierarchical mesh description scheme.

2.4 Mechanical Simulation Systems
The goal of mechanical simulation is to produce a model with which we may simulate the
basic properties of fabric rapidly but realistically. Whatever the mechanical model chosen, an
adequate implementation using state-of-the-art algorithms and numerical methods has to be
defined for reaching this goal.

2.4.1 A Good Simulation System
Efficient algorithms are always the result of algorithmic compromises that balance qualities
of the results with the computation times. Numerous qualities can be considered for cloth
simulation systems, which have to be considered with respect to their application contexts
and respective computation time requirements.
2.4.1.1

Qualities

The major qualities of a good mechanical simulation system are:

•

Scope: The simulation system should support the mechanical behavior and the properties
to be simulated. The simplest models only support some basic form of linear elasticity,
while advanced models can deal with anisotropic and highly nonlinear behaviors related
to elasticity, viscosity, plasticity in elongation or curvature, including advanced aerodynamic effects and possibilities for various dynamic constraints.

•

Accuracy: The mechanical system should be simulated in a very accurate way in whatever possible context. Depending on the application (computer graphics or mechanical

36

2 Simulation Models

engineering) the requirements on accuracy can be very different, ranging from visual realism to quantitative accuracy of some mechanical states.
•

Robustness: The simulation system should be able to compute accurately the mechanical
system whatever the context, which can vary along the simulation, and no particular
situation should cause the simulation to fail. The major problems usually result from numerical instability caused by inadequate space and time discretization in the numerical
algorithms.

•

Speed: Obviously, speed is one of the major value of a simulation system, and the
"money" you will use for "buying" the qualities mentioned above.

Computation speed may become a constraint, of variable impact depending on the application.
•

For offline computation systems that do not require user interaction, the total computation
time and the amount of time that the user can afford to wait for getting the results of a
simulation are the constraint in the design sequence. While not very constraining for
static models where only a final position has to be computed (for example, a draping
problem), this may become an issue for the computation of an animation requiring several thousands of frames. Speed is also an issue in a design process based on trial-anderror, limiting the number of possible tests in a certain amount of time.

•

For interactive applications where the user interacts with the cloth being simulated, the
computation time between two frames is more critical. The affordable time is determined
by the user's perception of the effects of his interactions which is usually also related to
the perception of evolution and movement. While real-time animation is usually not a requirement, the frame rate should be high enough (usually at least five frames per second)
for motion perception, and the reactivity of the model to user interaction should not be
delayed more than the duration of one frame.

•

For real-time applications where the time line of the computation has to match the actual
time, the time of the computation is strictly bounded, and the simulated phenomena
should be computed at the speed they would actually occur. This is usually the hardest
requirement to meet in terms of computation speed. Unlike interactive applications, there
is no requirement based on the frame rate. However, most real-time applications are usually meant to be interactive or at least to display their results directly as being computed.
An adapted frame rate related to the internal time discretization and good user perception
of the motion, is then necessary.

2.4 Mechanical Simulation Systems

2.4.1.2

37

Compromises and Choices

It is always possible to build a very accurate and general simulation system through very
complicated and detailed models, and by performing the simulation on very refined, geometrical representations, but always at the expense of speed.

A. Simulation Accuracy
It is not very difficult to define an accurate mechanical model, as long as we are willing to
give up computational efficiency. The major difficulty is in fact to find the best tradeoff between the accuracy and the speed so that the model fulfills our goal (realistic cloth animation
for computer graphics) most quickly, wasting as little time as possible.
Inaccuracy in simulation results from several factors:

•

Coarseness of the surface discretization: The topology and smoothness of the triangular
mesh makes it a more or less accurate representation of the surface shape and deformation.

•

Approximations in the mechanical model: The "real material" is never modeled exactly,
and its behavior is approximated by simplified mechanical laws which does not take into
account several nonlinear behaviors, particularly for highly deformed domains, as well as
local variations in the mechanical structures along the surface.

•

Accuracy of the simulation method: The simulation process is numerical and iterative,
and its accuracy is closely related to the discretizations in the numerical model and particularly to the chosen timestep.

The literature often emphasizes the accuracy of the mechanical model. The major causes
of inaccuracy, however, are rather found in the surface discretization, not only because it is a
geometrical approximation, but more importantly because it is highly dependent on the actual
behavior of the model. This is particularly true in a situation with a high degree of deformation, such as cloth simulation, where the size of the wrinkle folds may attain the size of the
discretization elements. For instance, if a rough triangle mesh is modeled to be inelastic for
in-plane deformations, then this will hinder the surrounding mesh from bending, even if according to the model, only weak forces should be required to bend it.

38

2 Simulation Models

B. Major tradeoffs
Obviously, the computation speed lays at one side of the tradeoff possibilities, and simulation
accuracy at the other side. The correct algorithmic choices are to be based on the purpose of
the application:

•

Real-time and interactive applications are fitted to hard computation time requirements,
and simplified models that compute quickly are necessary. The computation time should
also not be altered by the variable mechanical contexts that might occur during the simulation. This is usually done for computer graphics by keeping in mind that these applications usually only require visual realism, more than quantitative accuracy of the deformation amounts.

•

Computer design and simulation applications require some quantitative reproduction of
the deformation phenomena, and thus an adapted model that is accurate enough to simulate them precisely. Depending on the considered objects to be simulated (for example, a
simple cloth square of a full garment), this is usually incompatible with interactive and
real-time applications.

•

Application involving highly variable situations and user interaction also have the requirement of robustness, for being able to deal with any situation that may arise, even if
they are not physically valid. This complicates the mechanical model which should cope
with extended geometrical deformations, and the numerical resolution scheme which
should converge as quickly as possible back to "normal" deformations and not diverge or
exhibit instabilities.

C. Robustness Considerations
A major quality of a mechanical simulation system is to be accurate: Given a realistic mechanical system and some realistic mechanical parameters, the result of the simulation should
be realistic and reflect as exactly as possible the expected evolution of the model.
Robustness also relates to the ability of the model to deal with unexpected situations that
might be a little beyond the limits of realism of a mechanical model. For instance, user manipulation of a geometrical object is purely geometrical and can lead to deformations that are
dynamically not correct (unrealistic deformations, infinite accelerations, ... ). Computing exact
mechanical response from these situations is obviously quite a nonsense, as they would actually produce similarly unrealistic effects that might lead to inconsistent and irreversible results and numerical instability.

2.4 Mechanical Simulation Systems

39

Nevertheless, a realistic behavior cannot be expected if the geometrical deformations itself
are not realistic. A robust system is expected to be able to cope with extreme situations, possibly by altering the simulation away from the original mechanical model, in order to produce
a moderate response which effect is to converge back to a realistic situation as quickly as
possible. A good compromise is for the forces to simulate the reality as long as the deformations are kept at a reasonable level, but to remain "unrealistically" low when deformations go
beyond usual values.

D. Mesh Refinement Considerations
As stated above, the discretization of the geometrical model is an important factor of the accuracy and simulation speed which should be chosen adequately to the accuracy of the considered mechanical simulation scheme. It is highly related to the expected deformations of a
surface region and particularly to curvature deformations (folds and wrinkles). For instance,
accurate bending will only be simulated accurately by a precise mechanical model if its geometrical representation contains at least a few dozens of polygons across the binding section.
However, modeling all the wrinkles of a garment in this way would require several hundred
thousands polygons for the whole surface, which is computationally not realistic with the
current technologies. A more realistic garment simulation would only use objects containing
a few thousands of polygons and thus, unable to relate precisely the cloth surface curvatures.
The optimal discretization of a cloth object should be determined with narrow consideration of the expected accuracy of the geometrical model, particularly for curvature, and the
related accuracy of the mechanical model that will simulate these deformations.
While bending and wrinkling patterns are often roughly predictable on the cloth surface
simulated in a precise context, an optimized mesh would be adapted to this context and refined in the surface regions most likely to be curved, with possibly anisotropic refinement
along the curvature direction. For more variable contexts, adaptive and dynamic rediscretization schemes may be implemented.

40

2 Simulation Models

2.4.2 Geometrical Models
A simple approach to cloth modeling is to geometrically characterize the shape of the cloth
surface under given mechanical conditions and to reproduce this accurately on the computer
model.

2.4.2.1

Principles

Geometrical models constitute an intermediate simulation paradigm where the evolution of
the simulated system is modeled by laws and behaviors derived from geometrical descriptions and their derived approximations.
For cloth animation, geometric models derive the cloth motion and deformation of the
cloth from geometrical curves and functions that are parametrized by time so as to satisfy a
number of criteria, including most obviously the conservation laws for surfaces and momentum, as well as the collision effects with other objects and external factors such as gravity and
wind.
A variety of mathematical surfaces can be used to model the cloth shape, such as various
kinds of Bezier or spline surfaces which model curved surfaces in a continuous way. Discrete
surface representations may also be considered, such as polygonal meshes.
Surface area conservation is a key consideration in cloth simulation as it is mainly responsible for making cloth simulation realistic. The major visual effect is wrinkling behavior.
When a surface is deformed, the metric length of any arc drawn on the surface should remain
more or less constant, provided that metric rigidity is high relative to the applied forces. The
main consequence of this is the appearance of wrinkles as the surface gets compressed along
one direction. Geometric models can incorporate these considerations to generate wrinkling
patterns on deformed surfaces.
The main interest of geometrical simulation models for cloth simulation application is to
have a computationally efficient and highly controllable model which can perform the simulation well in certain predefined contexts. Since the geometrical deformed state of the cloth,
which is part of the model, is directly computed from the simulation parameters, it can be
closely controlled by tuning the model so that the context it performs best corresponds to the
expected behavior. Furthermore, hysteresis effects on the evolution of the system can be
minimized because the dependence on initial conditions can be suppressed.

2.4 Mechanical Simulation Systems

41

The most important use of geometrical models are applications in very specific contexts
where the expected behavior and evolution is well known and easily integrated into the
model. An efficient and straightforward computation can then deduce the evolution of the
state of the system directly from these geometrical rules. These models offer high controllability and allow easy and predictable design of animation sequences. However, they cannot
reproduce highly variable situations such as those encountered in general garment applications, without unrealistically simplifying the expected response. Geometrical models are thus
very efficient for simple problems, such as wrinkle formation on local surface areas of the
cloth. However, very general applications using arbitrary cloth shapes submitted to arbitrary
and complex, mechanical and environment contexts might involve less predictable trajectories which cannot be reproduced by such models.

2.4.2.2

History

Geometrical models were the first techniques to be used in computer graphics for cloth
simulation, as these techniques do not require the huge amount of computation that mechanical simulation necessitates.
Weil [WEI 86] produced the first simulations of hanging cloth surfaces by fitting catenary
curves between the points of attachment of a recursive subdivision of the cloth surface.
Spline approximation was then performed for smoothing the final surface.
An extension of this work is presented in [TAl 91], which models the wrinkles of a fabric
rectangle hanging between two points under additional mechanical constraints, such as
stretching, bending and gravitational forces.
Another approach is to build the cloth surface using sweep surfaces, such as presented in
[DHA 93], where the sweep deformation is determined by certain mechanical calculations.
While simulating fabric behavior is the most common approach to cloth simulation, another completely different way of constructing dressed characters is to base the garment
shape using aspects of the body shape. The work described in [HIN 90] presents the first solution using this approach and produces the cloth surfaces as a set of fabric panels generated
by interpolating a user-defined set of points on the body surface.
A more advanced approach is to deform an offset of the underlying skin to simulate the
cloth surface, which can then be wrinkled according to the deformation. This technique is de-

42

2 Simulation Models

scribed in [HNG 96], where sinusoidal wrinkle deformations are generated along the lines on
a cloth surface which is originally defined as an offset of the underlying body skin. The
wrinkle lines are either automatically determined or manually edited.

2.4.3 Continuum Mechanics Models
A continuum mechanic model describes the mechanical state of an object using the continuous expressions defined on the geometry. For deformable surfaces, such expressions are usually the surfacic deformation energy related to the local surface deformation (elongation,
shearing, curvature), formulated as differential expressions. Mechanical laws are directly derived from them, providing the strains exerted on infinitesimal surface elements.
The main advantage of continuum mechanical techniques is that they provide accurate
models of the material properties derived directly from mechanical laws. They are inherently
capable of reproducing the nonlinearities of most viscoelastic models. Furthermore, object
representation is constant, and the discretization needs only be performed for numerical solution, which can be adapted dynamically. Besides the heavy computing requirements of continuum mechanics techniques, they also suffer from several drawbacks which can render
them inappropriate for certain applications. For instance, the formal and analytical description they require for the mechanical behavior of the material cannot easily be altered to represent the transitory and nonlinear events. Hence, phenomena such as frequent collisions or
other highly variable geometrical constraints cannot be conveniently taken into account.
While highly adapted to the accurate computation of the dynamics of objects having welldefined mechanical constraints and relatively stable mechanical contexts, continuum mechanical approaches are less promising for the rapid simulation of highly deformable materials involved in numerous collisions, such as cloth simulation

2.4.3.1

Lagrange Equation Models

The Lagrange equations are the basis of the most common continuum mechanical models. It
is initially used by Terzopoulos et al in [TER 87] for the simulation of deformable surfaces
and is the starting point of many current models.

43

2.4 Mechanical Simulation Systems

A. Theory
Such model considers the equation of motion of an infinitesimal surface element, expressed
from the variation of internal energy produced by the particle motion. The equation of motion
is derived from variational calculus and described in the Lagrange form:
o (orCa,t))
or(a,t) &(r)
J1(a)
+y(a)
+--(a,t)=f(r(a,t),t)
ot
ot
ot
Or

(1)

where r(a,t) is the position of a, the particle of material with coordinates a. and a2 on the
surface n at time t. Il(a) and y(a) are the mass and damping densities at the position of the
particle a. E(r) is the instantaneous elastic deformation potential energy of the surface.
The mechanical behavior of the material should be expressed as the local deformation energy related to the actual material deformation and expressed locally for any surface point.
The first step is to compute the local deformation properties of the surface. Most of the time,
the model would allow a separate consideration of elongation and curvature deformations. In
that case, the elastic surface energy is represented by two components G and B, derived from
the elongation and curvature elasticity deformation, namely the metric tensor of the first fundamental form and the curvature tensor of the second fundamental form:
it it
Gij(r(a,t))=-·-Bij(r(a,t))
oa; oa j

it
it
--xoa\ oa 2

I it

o2r

I'
it oa;oa

-x-

oa\

(2)
j

oa 2

The internal energy is then derived from these expressions. The mechanical behavior of
the material is integrated at this point in its mechanical deformation energy expression. In the
general case, the curves relating the deformation energy with respect to any kind of elementary deformation has to be expressed. In the particular case of a linear and isotropic elastic
model considering only metric elongation and curvature deformation, the model uses a simplified representation which computes the energy as follows:
&(r)= rf(lJij(Gij
n

;.j=\

-G;~ y+';ij(Bij -B~ Y)da\da

2

(3)

where llij and ~ij are weighting functions which control the elongation and curvature rigidities of the surface, respectively, and which are related to the metric and curvature elasticity parameters of the material.

44

2 Simulation Models

The expression (4) is then integrated in the Lagrange equation (2), which is turned into a
differential system which has to be solved for obtaining the evolution of the deformable surface.
~(

oa 1

) _ r(m+l,n)-r(m-l,n) o2r (
) _ r(m+l,n)+r(m-l,n)-2r(m,n)
m,n 2 m,n 2
2~1
oa 1
~l

~(

)_ r(m,n+l)-r(m,n-l) o2r (
)_ r(m,n+l)+r(m,n-l)-2r(m,n)
m,n 2 m,n oa 2
2~2
oa 2
~2 2

(4)

o2r (m,n)= o2r (m,n)= r(m+l,n+l)+r(m-l,n-l)-r(m+l,n-l)-r(m-l,n+l)
Oa 1 0a 2
oa 2oa 1
4~1 ~2

Such system cannot be solved analytically and has to be processed numerically using surface discretization along the material coordinates at and a2. The most convenient way to discretize the problem is to use a regular grid defined along the material coordinates at and a2.
In such a grid, each node of the grid r(m,n) can be expressed in its coordinates (at, a2) = (m
~t, n ~2). The partial derivatives are then expressed using the finite differences as:
These expressions yield the elongation and curvature deformation using formula (2) and
the corresponding energy with formula (3) for each grid vertex. The differential expression of
this energy for each grid vertex using the discrete expression of the Lagrange equation (1) finally yields a sparse linear system that can be solved using a numerical method, such as the
Gauss-Seidel method.
The major problems concerning such methods are related to the constraints on the equation formulations and also on the regular grid structure:
•

The continuous formulation of the model complicates the integration of local effects and
constraints, such as geometrical and variable constraints related to collision response.

•

The regular grid structure constrains the global shape of the surface to be simulated. Describing a complex geometrical shapes can only be performed using the definition of approximate boundary elements, increasing the system complexity and approximation.

However, the formulation of the model does not include any hypothesis on the surface description. It is possible to increase performance using advanced surface representations, such
as recursive quadtree meshes for which the resolution is dynamically adapted to the expected
deformations. Moreover, a continuous scheme is highly suited for the surface representations

that include surface curvature in and analytical way, such as spline or Bezier patches. The

2.4 Mechanical Simulation Systems

45

computation of the deformation energy of such patches is highly simplified, as the shape can
be expressed analytically from the geometrical parameters of the patch without any form of
discretization.

B. Developments in Continuum Mechanics Models
The first major simulation system was developed by Terzopoulos [TER 87] for simulating
cloth and deformable surfaces. It used the Lagrange formulation described above for simulating viscoelastic surfaces.
Terzopoulos has extended his model to various applications where deformable objects are
simulated using physically based animation, described in detail in [TER 88]. These include
cloth simulation, other applications showing simple surfaces with geometrical or collision
constraints as well as flag animations and cloth tearing.

Fig. 2.15. Various cloth simulations
(Reprinted from [TER 88] - © Springer-Verlag, The Visual Computer, Issue 4, 1988)

This model has been used and further developed for garment simulation on virtual actors,
using adapted elastic models and collision response, as described in [LAF 91] and [CAR 92].
This work has shown a real integration of the cloth simulation system into a framework for
building and animating garments on virtual actors.
A more recent implementation of Terzopoulos's model is described in [LIU 96]. This involves drapings of rectangular cloth surfaces constituted by regular meshes. The Lagrangian
description is integrated using finite differences on a regular grid for simulating a viscoelastic
surface. The interest of this work is its improved collision response management which constrains the displacement of the cloth along the object surfaces in contact when the exact colli-

46

2 Simulation Models

sion time has been detennined. The collision detection algorithm is a simple algorithm which
only optimizes the detection process using bounding boxes around mesh triangles.
A particular implementation of Terzopoulos's model was also presented in [LLI 93] and
[LLI96]. Its particular interest was the modeling of the interaction between the cloth and an
air flow using Reynold's averaged Navier-Stokes equations. A steady air flow was considered in [LLI 93] and an unsteady one in [LLI 96], which included an advanced model of air
velocity variation. Although the computation times are quite acceptable, the model was restricted to simple cloth objects composed of regular grids of a few hundred elements, and the
mechanical context was very restrictive.

Fig. 2.16. Cloth draping (Reprinted from [LIU 96] - © Springer-Verlag, The Visual Computer, Issue 12 1996).

A more specialized model was presented in [AON 90]. It considered wrinkle propagation
in a piece of cloth under given mechanical constraints. The cloth was modeled as a perfectly,
linearly elastic material described by its Young modulus and its Poisson coefficient in equilibrium state at all times according to 0' Alembert's principle. The stain-stress behavior
equations were derived by adding to these conditions the additional assumption that the cloth
never defonns along the surface nonnal direction. As a result, this model accurately represents wrinkle propagation on a defonned simple cloth surface, but is unable to produce the
drapings of a cloth under complex mechanical contexts, such as collisions.
"Flashback" is one of the first films to simulate a complete gannent on a virtual actor. It
was produced at MIRALab on 1990 as described in [LAF 91]. The film is a short sequence
showing a virtual Marilyn in a dress with a