Large scale simulation of cloth and hair with - ETH E

Diss. ETH No. 23223
Large scale simulation of cloth and
hair with contact
A dissertation submitted to
ETH Zurich
for the Degree of
Doctor of Sciences
presented by
Rasmus Tamstorf
M.Sc. Electrical Engineering, Technical University of Denmark
born June 19, 1972
citizen of Denmark
accepted on the recommendation of
Prof. Dr. Markus Gross, examiner
Prof. Dr. Peter Schröder, co-examiner
Prof. Dr. Eitan Grinspun, co-examiner
2016
Abstract
The goal of this thesis is to develop new methods for robust and scalable simulation of thin objects with contact. This work is motivated by applications in cloth
and hair simulation in feature film production, but the results are also applicable
in other domains such as in the garment industry, in biology, and in mechanical
engineering.
The contributions focus primarily on physically correct contact response and efficient implementation thereof. While collision detection has been studied extensively, collision response remains a challenging problem. This is due in part to the
fact that contact constraints are both nonlinear, non-convex, and non-smooth. Furthermore, the response is inherently coupled to the underlying dynamics, which
is often neglected in existing methods.
We first develop the necessary details for implementation of the dynamics of orthotropic thin shells undergoing large deformations. This derivation is based on
fundamental invariants and symmetry considerations from continuum mechanics and leads to a simple and efficient extension of existing membrane models. We
also show how the analytical derivatives for the discrete shell bending model can
be computed efficiently to facilitate implicit integration.
The next part of the thesis is based on the observation that nonlinear compliance
is critical for collision response involving thin objects. This is illustrated with rods
(hair), which exhibit the same fundamental problem as shells, but are cheaper to
simulate. Taking the nonlinearity into account, we show that simulations can be
run with time steps that are 2 3 orders of magnitude larger than with existing
methods. Based on this observation, we construct a solver that locally adapts the
nonlinear treatment based on the current configuration to ensure stable simulations. We then validate our approach by running simulations with thousands of
hairs and millions of contacts.
Hair simulation is generally simpler than cloth because the rods can be partitioned
into contact groups that can each be handled separately. For shells, all degrees of
freedom are inherently coupled, which leads to much larger systems of equations
that have to be solved. In pursuit of solving these larger systems of equations,
the last part of the thesis investigates the use of algebraic multigrid methods. The
first key observation here is that standard multigrid methods (both geometric and
iii
algebraic) fail to perform well for thin shell equations even in the absence of contact. To address this difficulty, we introduce the smoothed aggregation method to
cloth simulation. This is an algebraic multigrid method designed specifically for
vector valued problems. Used as a preconditioner for CG, smoothed aggregation
provides substantial speedups for medium and large size problems compared to a
diagonally preconditioned CG method. Compared to geometric multigrid methods, it provides both better convergence rates and increased flexibility. Due to the
algebraic nature of the method, it can be used for irregular meshes as well as with
adaptive tessellations, which is not practical with geometric multigrid methods.
iv
Zusammenfassung
Das Ziel dieser Dissertation ist die Entwicklung robuster und skalierbarer Methoden zur Simulation von dünnen Objekten mit Kontakten wie beispielsweise
Haare und Kleider. Motiviert wurde die Arbeit durch die Filmindustrie, die Resultate können aber zum Beispiel auch in der Biologie oder im Maschinenbau
angewendet werden.
Der primäre Beitrag dieser Dissertation ist die physikalisch korrekte Kollisionsbehandlung und deren effiziente Implementierung. Während das Problem der Kollisionserkennung verbreitet erforscht wurde, ist die korrekte Kollisionsbehandlung
ein schwieriges Problem, weil die Kontaktbedingungen nicht-linear, nicht-konvex
und nicht glatt sind. Ausserdem vernachlässigen existierende Methoden oft die
Abhängigkeit der Kollisionsantwort von den unterliegenden Dynamiken.
Wir leiten zuerst die nötigen Gleichungen zur Implementierung der Dynamiken
von orthotropen dünne Schalen, die deformiert werden, her. Diese Herleitung basiert auf Invarianz- und Symmetrieannahmen aus der Kontinuumsmechanik und
liefert eine einfache und effiziente Erweiterung von existierenden Membranmodellen. Wir zeigen auch, wie die analytischen Ableitungen für diskrete Schalenmodelle effizient berechnet werden können.
Der nächste Teil der Arbeit basiert auf der Beobachtung, dass die nicht-lineare
Übereinstimmung für die Kollisionsantwort essentiell ist. Wir illustrieren diese
Beobachtung mit Kurvenmodellen, welche die gleichen fundamentalen Probleme
wie Schalenmodelle zeigen, jedoch einfacher zu simulieren sind. Unter Beachtung der Nichtlinearität zeigen wir, dass unsere Simulationen mit 100-1000 Mal
grösseren Zeitschritten funktionieren als existierende Methoden. Wir konstruieren einen Solver, der die Behandlung der Nichtlinearität lokal anpasst, um die
Stabilität der Simulation zu garantieren. Wir validieren unsere Methode mit Simulationen von tausenden von Haaren und Millionen von Kontakten.
Die Simulation von Haar ist im Allgemeinen einfacher als die Simulation von
Kleidern, weil Kurvenmodelle in Kontaktgruppen aufgeteilt und separat behandelt werden können. Bei Flächenmodellen sind alle Freiheitsgrade voneinander
abhängig, was zu viel grösseren Gleichungssystemen führt. Der letzte Teil dieser Arbeit befasst sich mit algebraischen Mehrgitterverfahren zur Lösung solcher Systeme. Existierende algebraische und geometrische Mehrgitterverfahren
v
funktionieren für Flächenmodelle jedoch schlecht. Diese Arbeit führt deshalb eine
glättende Aggregationsmethode zur Kleidersimulation ein. Es handelt sich dabei
um ein Mehrgitterverfahren, welches speziell für vektorwertige Probleme konzipiert ist. Das Verfahren konvergiert schneller als geometrische Mehrgitterverfahren und bietet eine höhere Flexibilität. Da es sich um eine algebraische Methode
handelt, kann diese auch für irreguläre Netze und adaptive Triangulierungen verwendet werden.
vi