Animation, Simulation, and Control of Soft Characters Using Layered Representations and Simplified Physics-Based Methods
Total Page:16
File Type:pdf, Size:1020Kb
Animation, Simulation, and Control of Soft Characters using Layered Representations and Simplied Physics-based Methods Nico Galoppo A dissertation submitted to the faculty of the University of North Carolina at Chapel Hill in partial fulfillment of the requirements for the degree of Doctor of Philosophy in the Department of Computer Science. Chapel Hill 2008 Approved by: Ming C. Lin, Advisor Miguel A. Otaduy, Reader Dinesh Manocha, Reader Markus Gross, Committee Member Anselmo Lastra, Committee Member c 2008 Nico Galoppo ALL RIGHTS RESERVED ii Abstract Nico Galoppo: Animation, Simulation, and Control of Soft Characters using Layered Representations and Simplied Physics-based Methods. (Under the direction of Ming C. Lin.) Realistic behavior of computer generated characters is key to bringing virtual environ- ments, computer games, and other interactive applications to life. The plausibility of a virtual scene is strongly influenced by the way objects move around and interact with each other. Traditionally, actions are limited to motion capture driven or pre-scripted motion of the characters. Physics enhance the sense of realism: physical simulation is required to make objects act as expected in real life. To make gaming and virtual environments truly immersive, it is crucial to simulate the response of characters to collisions and to produce secondary effects such as skin wrinkling and muscle bulging. Unfortunately, existing techniques cannot generally achieve these effects in real time, do not address the coupled response of a character’s skeleton and skin to collisions nor do they support artistic control. In this dissertation, I present interactive algorithms that enable physical simulation of deformable characters with high surface detail and support for intuitive deformation control. I propose a novel unified framework for real-time modeling of soft objects with skeletal deformations and surface deformation due to contact, and their interplay for object surfaces with up to tens of thousands of degrees of freedom. I make use of layered models to reduce computational complexity. I introduce dynamic deformation textures, which map three dimensional deformations in the deformable skin layer to a two dimensional domain for extremely efficient parallel computation of the dynamic elasticity equations and optimized hierarchical collision detection. I also enhance layered models with responsive contact handling, to support the interplay between skeletal motion and surface contact and the resulting two-way coupling effects. Finally, I present dynamic iii morph targets, which enable intuitive control of dynamic skin deformations at run- time by simply sculpting pose-specific surface shapes. The resulting framework enables real-time and directable simulation of soft articulated characters with frictional contact response, capturing the interplay between skeletal dynamics and complex, non-linear skin deformations. iv Acknowledgments If someone would have told me six years ago that living in North Carolina was going to make a significant change in my life, I would have frowned at first, then I would have needed someone to point out the state on a map, and finally I would have declared that person crazy. But truth be told, the department of Computer Science at the University of North Carolina in Chapel Hill has been a wonderful place to work. Sitterson Hall is filled with friendly and always helpful faculty, staff and fellow students. There are too many too mention, really; but I am thankful for the supportive and stimulative environment that each and every one of them has provided. I’d like to thank my advisor, Ming Lin for her guidance and for promoting my work at every possible occasion. It really is Ming’s accomplishment that so many people know about my research. I am also grateful to to my committee members Miguel Otaduy, Markus Gross, Dinesh Manocha and Anselmo Lastra for their continuing support, tech- nical guidance, and two incredible summers of research in Z¨urich. The work in this dissertation was published in various papers that would not have been possible without the help of my collaborators Sean Curtis, Paul Mecklenburg, Will Moss, Jason Sewall and Serhat Tekin. While my work at UNC has always been very stimulating, my life in Carrboro and Chapel Hill really could not have been as entertaining and unforgettable without my friends. I have made friends for life here, more than anywhere else in the world. Henry, Luca, Mary and Paul; I can’t imagine any better room mates than you! Brian and Lisa, how can I forget the many evenings together in the kitchen and the countless nights at the table; eating, chatting and laughing our worries and annoyances away. Jason and Sarah, you’ve always made sure to get me out of the office in time. Out and about, in v town or out of town: it did not matter, because it is the time with great friends that has made these events always memorable. Miguel, even though you weren’t in North Carolina, I always had the feeling that you were. I will always cherish the moments we had in Switzerland; be it while drinking, chatting, partying in the streets of Z¨urich, or hiking through the Swiss Alps! Jur, Lara, Kat, Chris, Marc, Luv, Monika, Simona, and all the people in the lab in Z¨urich: you are the best friends anyone can imagine. I would not be who I am now and I would not be where I am now, without the influence of my parents. You have always given me love and support, unconditionally, and no matter how far apart we are. The feeling that I can always depend on you is what brought me this far. Erika en Karolien, my two little sisters, I miss being closer to you. You have probably been the biggest influence on my personality, and I’ve always been able to confide in you! Finally, to the most important person in my life, thank you, Allison, for all the wonderful things that we have shared so far, and all that is ahead! vi Table of Contents List of Tables . xii List of Figures . xiii List of Abbreviations . xx 1 Introduction . 1 1.1 Deformable Simulation in Computer Graphics . 2 1.1.1 Terminology: What is Deformable Simulation? . 3 1.1.2 Applications . 8 1.1.3 Challenges . 12 1.2 Thesis . 15 1.3 Main Results . 16 1.3.1 Layered Models for Soft-body Simulation . 17 1.3.2 Pose-space Skin Dynamics . 18 1.3.3 Parallelization and Physically-based Simplification . 19 1.3.4 Two-stage Hierarchical Collision Queries . 22 1.3.5 Fast Contact Response for Soft Articulated Characters . 23 1.3.6 Control of Deformations with Dynamic Morph Targets . 24 1.4 Organization . 26 2 Related Work . 27 2.1 Simulation of Deformable Bodies . 27 2.1.1 Continuum Elasticity . 27 vii 2.1.2 Finite Element Method . 29 2.1.3 Reduced Models . 33 2.1.4 Surface Oriented Methods . 35 2.1.5 Layered Deformable Models . 36 2.1.6 Regular Grids and Texture-based Approaches . 37 2.2 Character Animation and Simulation . 38 2.2.1 Procedural Methods . 38 2.2.2 Example-based Methods . 40 2.2.3 Physically-based Methods . 41 2.3 Contact Handling . 42 2.3.1 Collision Detection . 42 2.3.2 Contact Response . 45 2.4 Control of Deformations . 47 2.4.1 Data-driven methods . 47 2.4.2 Kinematic methods . 47 2.4.3 Combined methods . 48 2.4.4 Physically-based methods . 48 3 Soft Body Simulation with Dynamic Deformation Textures . 51 3.1 Dynamic Deformation Textures . 52 3.1.1 Parameterization of Layered Deformable Objects . 53 3.1.2 Discretization and Generalized Coordinates . 54 3.2 Layered Dynamic Deformations . 56 3.2.1 Equations of Motion . 56 3.2.2 Efficient Decoupled Implicit Integration . 58 3.3 Texture-Based Collision Detection . 59 viii 3.4 Contact Resolution . 62 3.4.1 Efficient Decoupled Contact Resolution . .............. 63 3.5 Algorithm and Parallel Implementation . 65 3.5.1 Dynamic Deformation Textures . 67 3.5.2 Basic Rendering Blocks . 69 3.5.3 Simulation of Surface Deformations . 71 3.5.4 Texture-Based Collision Detection . 74 3.5.5 Rendering . 77 3.6 Benchmarks . 78 3.7 Comparisons and Discussion . 81 3.8 Advantages and Summary . 83 3.9 Limitations and Future Work . 84 4 Articulated Soft Character Simulation with Fast Contact Handling 85 4.1 Layered Articulated Soft Characters . 87 4.1.1 Pose-Space Deformation . 87 4.1.2 Discretization and Meshing . 88 4.2 Layered Dynamics with Contact Constraints . 90 4.2.1 Coupled Layered Dynamics in Free Motion . 91 4.2.2 Joint Constraints . 93 4.2.3 Contact Constraints . 94 4.3 Condensed Solution of Constraints . 96 4.3.1 Condensed Skeleton Dynamics . 97 4.3.2 Solving Collision-Free Velocities . 98 4.3.3 Hierarchical Pruning and Collision Queries . 99 4.3.4 Condensed Contact Constraints . 101 ix 4.3.5 Solving Collision Response . 102 4.3.6 Run-time Algorithm . 103 4.4 Results and Discussion . 103 4.4.1 Benchmarks . 103 4.4.2 Comparisons and Limitations . 106 4.5 Advantages and Summary . 108 4.6 Limitations and Future Work . 109 5 Deformation Control with Dynamic Morph Targets . 111 5.1 Method . 112 5.1.1 Dynamic Morph Targets . 112 5.1.2 Pose-dependent Elastic Model . 114 5.1.3 Interpolating Force Polynomials in Pose Space . 117 5.1.4 Reduced Equations of Motion . 119 5.2 Model Construction and Kinematic Constraints . 121 5.3 Reduced Modal Subspace Construction . 122 5.4 Results . 125 5.5 Advantages and Summary . 131 5.6 Limitations and Future Work . 132 6 Conclusion . 135 6.1 Summary of Results . 135 6.2 Future Work . 138 6.2.1 Limitations .