Large Steps in Cloth Simulation David Baraff Andrew Witkin

Total Page:16

File Type:pdf, Size:1020Kb

Large Steps in Cloth Simulation David Baraff Andrew Witkin SIGGRAPH 98, Orlando, July 19±24 COMPUTER GRAPHICS Proceedings, Annual Conference Series, 1998 Large Steps in Cloth Simulation David Baraff Andrew Witkin Robotics Institute Carnegie Mellon University Abstract tion of xÐyields the cloth's internal energy, and F (a function of x and x) describes other forces (air-drag, contact and constraint forces, The bottle-neck in most cloth simulation systems is that time steps internal˙ damping, etc.) acting on the cloth. must be small to avoid numerical instability. This paper describes In this paper, we describe a cloth simulation system that is much a cloth simulation system that can stably take large time steps. The faster than previously reported simulation systems. Our system's simulation system couples a new technique for enforcing constraints faster performance begins with the choice of an implicit numerical on individual cloth particles with an implicit integration method. integration method to solve equation (1). The reader should note The simulator models cloth as a triangular mesh, with internal cloth that the use of implicit integration methods in cloth simulation is far forces derived using a simple continuum formulation that supports from novel: initial work by Terzopoulos et al. [15, 16, 17] applied modeling operations such as local anisotropic stretch or compres- such methods to the problem.1 Since this time though, research on sion; a uni®ed treatment of damping forces is included as well. The cloth simulation has generally relied on explicit numerical integra- implicit integration method generates a large, unbanded sparse lin- tion (such as Euler's method or Runge-Kutta methods) to advance ear system at each time step which is solved using a modi®ed con- the simulation, or, in the case of of energy minimization, analogous jugate gradient method that simultaneously enforces particles' con- methods such as steepest-descent [3, 10]. straints. The constraints are always maintained exactly, independent This is unfortunate. Cloth strongly resists stretching motions of the number of conjugate gradient iterations, which is typically while being comparatively permissive in allowing bending or shear- small. The resulting simulation system is signi®cantly faster than ing motions. This results in a ªstiffº underlying differential equa- previous accounts of cloth simulation systems in the literature. tion of motion [12]. Explicit methods are ill-suited to solving stiff equations because they require many small steps to stably advance the simulation forward in time.2 In practice, the computational cost KeywordsÐCloth, simulation, constraints, implicit integration, of an explicit method greatly limits the realizable resolution of the physically-based modeling. cloth. For some applications, the required spatial resolutionÐthat is, the dimension n of the state vector xÐcan be quite low: a reso- 1 Introduction lution of only a few hundred particles (or nodal points, depending on your formulation/terminology) can be suf®cient when it comes Physically-based cloth animation has been a problem of interest to to modeling ¯ags or tablecloths. To animate clothing, which is the graphics community for more than a decade. Early work by Ter- our main concern, requires much higher spatial resolution to ad- zopoulos et al. [17] and Terzopoulos and Fleischer [15, 16] on de- equately represent realistic (or even semi-realistic) wrinkling and formable models correctly characterized cloth simulation as a prob- folding con®gurations. lem in deformable surfaces, and applied techniques from the me- In this paper, we demonstrate that implicit methods for cloth chanical engineering and ®nite element communities to the prob- overcome the performance limits inherent in explicit simulation lem. Since then, other research groups (notably Carignan et al.[4] methods. We describe a simulation system that uses a triangular and Volino et al. [20, 21]; Breen et al. [3]; and Eberhardt et al.[5]) mesh for cloth surfaces, eliminating topological restrictions of rect- have taken up the challenge of cloth. angular meshes, and a simple but versatile formulation of the inter- Although speci®c details vary (underlying representations, nu- nal cloth energy forces. (Unlike previous metric-tensor-based for- merical solution methods, collision detection and constraint meth- mulations [15, 16, 17, 4] which model some deformation energies as ods, etc.), there is a deep commonality amongst all the approaches: quartic functions of positions, we model deformation energies only physically-based cloth simulation is formulated as a time-varying as quadratic functions with suitably large scaling. Quadratic energy partial differential equation which, after discretization, is numeri- models mesh well with implicit integration's numerical properties.) cally solved as an ordinary differential equation We also introduce a simple, uni®ed treatment of damping forces, a subject which has been largely ignored thus far. A key step in our 1 ∂E simulation process is the solution of an O(n) O(n) sparse lin- x M− F . (1) × ¨ = − ∂x + ear system, which arises from the implicit integration method. In this respect, our implementation differs greatly from the implemen- In this equation the vector x and diagonal matrix M represent the tation by Terzopoulos et al. [15, 17], which for large simulations geometric state and mass distribution of the cloth, EÐa scalar func- 1Additional use of implicit methods in animation and dynamics work in- Author af®liation (September 1998): David Baraff, Andrew Witkin, cludes Kass and Miller [8], Terzopoulos and Qin [18], and Tu [19]. Pixar Animation Studios, 1001 West Cutting Blvd., Richmond, CA 94804. 2Even worse, the number of time steps per frame tends to increase along Email: [email protected], [email protected]. with the problem size, for an explicit method. Cloth simulations of size nÐ meaning x IR O(n)Ðgenerally require O(n) explicit steps per unit simu- ∈ This is an electronic reprint. Permission is granted to copy part or all of this lated time. Because the cost of an explicit step is also O(n) (setting aside paper for noncommercial use provided that the title and this copyright no- complications such as collision detection for now) explicit methods for cloth 2 tice appear. This electronic reprint is 1998 by CMU. The original printed require time O(n )Ðor worse. paper is 1998 by the ACM. 43 SIGGRAPH 98, Orlando, July 19±24 COMPUTER GRAPHICS Proceedings, Annual Conference Series, 1998 used an ªalternating-directionº implicit (ADI) method [12]. An ing from the use of implicit integration techniques were solved, for ADI method generates a series of tightly banded (and thus quickly small systems, by direct methods such as Choleski factorization, or solved) linear systems rather than one large sparse system. (The using iterative techniques such as Gauss-Seidel relaxation or conju- price, however, is that some of the forces in the systemÐnotably gate gradients. (For a square system of n nodes, the resulting linear between diagonally-adjacent and non-adjacent nodes involved in system has bandwidth √n. In this case, banded Choleski factoriza- self-collisionsÐare treated explicitly, not implicitly.) The speed tion [6] requires time O(n2).) As previously discussed, Terzopoulos (and ease) with which our sparse linear systems can be robustly et al. made use of an ADI method for larger cloth simulations. solvedÐeven for systems involving 25,000 variables or moreÐhas Following Terzopoulos et al.'s treatment of deformable surfaces, convinced us that there is no bene®t to be gained from using an ADI work by Carignan et al. [4] described a cloth simulation system method instead (even if ADI methods could be applied to irregular using rectangular discretization and the same formulation as Ter- triangular meshes). Thus, regardless of simulation size, we treat all zopoulos et al. Explicit integration was used. Carignan et al. recog- forces as part of the implicit formulation. Even for extremely stiff nized the need for damping functions which do not penalize rigid- systems, numerical stability has not been an issue for our simulator. body motions of the cloth (as simple viscous damping does) and they added a force which damps cloth stretch and shear (but not bend). Later work by the same group includes Volino et al. [20], 1.1 Speci®c Contributions which focuses mainly on collision detection/response and uses a tri- Much of the performance of our system stems from the development angular mesh; no mention is made of damping forces. The system of an implicit integration formulation that handles contact and ge- uses the midpoint method (an explicit method) to advance the simu- ometric constraints in a direct fashion. Speci®cally, our simulator lation. Thus far, the accumulated work by this group (see Volino et enforces constraints without introducing additional penalty terms in al. [21] for an overview) gives the only published results we know of the energy function E or adding Lagrange-multiplier forces into the for simulated garments on moving characters. Reported resolutions force F. (This sort of direct constraint treatment is trivial if equa- of the garments are approximately two thousand triangles per gar- tion (1) is integrated using explicit techniques, but is problematic ment (roughly 1,000 nodal points) [21] with running times of sev- for implicit methods.) Our formulation for directly imposing and eral minutes per frame for each garment on an SGI R4400 150 Mhz maintaining constraints is harmonious with the use of an extremely processor. fast iterative solution algorithmÐa modi®ed version of the conju- Breen et al. [3] depart completely from continuum formulations gate gradient (CG) methodÐto solve the O(n) O(n) linear sys- of the energy function, and describe what they call a ªparticle- tem generated by the implicit integrator. Iterative× methods do not basedº approach to the problem. By making use of real-world cloth in general solve linear systems exactlyÐthey are run until the solu- material properties (the Kawabata measuring system) they produced tion error drops below some tolerance threshold.
Recommended publications
  • Using Particles to Sample and Control Implicit Surfaces
    Using Particles to Sample and Control Implicit Surfaces Andrew P. Witkin Paul S. Heckbert Department of Computer Science Carnegie Mellon University Abstract In this paper, we present a new particle-based approach to sam- We present a new particle-based approach to sampling and con- pling and shape control of implicit surfaces that addresses these trolling implicit surfaces. A simple constraint locks a set of particles problems. At the heart of our approach is a simple constraint that onto a surface while the particles and the surface move. We use the locks a collection of particles onto an implicit surface while both constraint to make surfaces follow particles, and to make particles the particles and the surface move. We can use the constraint to follow surfaces. We implement control points for direct manipula- make the surface follow the particles, or to make the particles follow tion by specifying particle motions, then solving for surface motion the surface. Our formulation is differential: we specify and solve that maintains the constraint. For sampling and rendering, we run the for velocities rather than positions, and the behavior of the system constraint in the other direction, creating floater particles that roam is governed by differential equations that integrate these velocities freely over the surface. Local repulsion is used to make floaters over time. spread evenly across the surface. By varying the radius of repulsion We control surface shape by moving particles interactively, solv- adaptively, and fissioning or killing particles based on the local den- ing for surface motion that keeps the particles on the surface.
    [Show full text]
  • Physically Based Modeling: Principles and Practice
    Physically Based Modeling: Principles and Practice Co-Chairs: David Baraff and Andrew Witkin Carnegie Mellon University In recent years, physically based modeling has emerged as an important new approach to com- puter animation and computer graphics modeling. Although physically based modeling is in- herently a mathematical subject, the math involved needn't be any more difficult nor esoteric than the math that underlies many other areas of computer graphics, such as ray tracing or sur- face modeling. Many papers on the subject have presupposed a specialized mathematical background that many members of the computer graphics community lack. Consequently, many capable computer graphics practitioners, despite their interest in the subject, have simply been put off by the density of the math. This course course addresses the need to make the principles and methods of physically based modeling accessible to a broader computer graphics audience—those who are familiar with mainstream computer graphics and have the usual basic computer graphics math, such as vec- tor/matrix manipulations, but whose first year calculus course may be only dimly remembered. The course is divided into two broad sections: A series of five lectures that together form a systematic exposition of the core technical content; and a pair of lectures that discuss produc- tion experience with physically based modeling techniques. For updates and additional information, see http://www.cs.cmu.edu/~baraff/sigcourse SIGGRAPH ’97 COURSE NOTES A1 PHYSICALLY BASED MODELING Course Schedule 8:30 am Introduction 8:45 am Differential Equation Basics Witkin 9:30 am Particle Dynamics Witkin 10:15 am Break 10:30 pm Rigid Body Dynamics Baraff 11:15 am Implicit Methods Baraff 12:00 pm Lunch 1:30 pm Dynamics in Feature Animation Blum/Thumrogoti 2:30 pm Constrained Dynamcs Witkin/Baraff 3:45 pm Break 4:00 pm Dynamics software Monheit 5:00 pm End SIGGRAPH ’97 COURSE NOTES A2 PHYSICALLY BASED MODELING Course Speakers Andrew Witkin is a Professor of Computer Science and Robotics at Carnegie Mellon Univer- sity.
    [Show full text]
  • Physically Based Modeling: Principles and Practice Particle System Dynamics
    Physically Based Modeling: Principles and Practice Particle System Dynamics Andrew Witkin Robotics Institute Carnegie Mellon University Please note: This document is 1997 by Andrew Witkin. This chapter may be freely duplicated and distributed so long as no consideration is received in return, and this copyright notice remains intact. Particle System Dynamics Andrew Witkin School of Computer Science Carnegie Mellon University 1 Introduction Particles are objects that have mass, position, and velocity, and respond to forces, but that have no spatial extent. Because they are simple, particles are by far the easiest objects to simulate. Despite their simplicity, particles can be made to exhibit a wide range of interesting behavior. For example, a wide variety of nonrigid structures can be built by connecting particles with simple damped springs. In this portion of the course we cover the basics of particle dynamics, with an emphasis on the requirements of interactive simulation. 2 Phase Space The motion of a Newtonian particle is governed by the familiar f = ma, or, as we will write it here, x¨ = f/m. This equation differs from the canonical ODE developed in the last chapter because it involves a second time derivative, making it a second order equation. To handle a second order ODE, we convert it to a first-order one by introducing extra variables. Here we create a variable v to represent velocity, giving us a pair of coupled first-order ODE’s v˙ = f/m, x˙ = v. The position and velocity x and v can be concatenated to form a 6-vector. This position/velocity product space is called phase space.
    [Show full text]
  • Through-The-Lens Camera Control
    Through-the-Lens Camera Control Michael Gleicher and Andrew Witkin School of Computer Science Carnegie Mellon University Pittsburgh, PA g fgleicher|witkin @cs.cmu.edu Abstract a great degree as alternative slicings of the same projective pie. In this paper we introduce through-the-lens camera con- How important is the choice of the camera model's pa- trol, a body of techniques that permit a user to manipulate rameterization? Very important, if the parameters are to a virtual camera by controlling and constraining features serve directly as the controls for interaction and keyframe in the image seen through its lens. Rather than solving interpolation. For example, the popular LOOKAT- for camera parameters directly, constrained optimization /LOOKFROM/VUP parameterization makes it easy to is used to compute their time derivatives based on desired hold a world-space point centered in the image as the changes in user-de®ned controls. This effectively permits camera moves without tilting. To do the same by man- new controls to be de®ned independent of the underlying ually controlling generic translation/rotation parameters parameterization. The controls can also serve as con- would be all but hopeless in practice, although possible in straints, maintaining their values as others are changed. principle. We describe the techniques in general and work through a detailed example of a speci®c camera model. Our im- The dif®culty with using camera parameters directly as controls is that no single parameterization can be ex- plementation demonstrates a gallery of useful controls and constraints and provides some examples of how these may pected to serve all needs.
    [Show full text]
  • Universit`A Degli Studi Di Parma Automatic
    UNIVERSITA` DEGLI STUDI DI PARMA DIPARTIMENTO DI INGEGNERIA DELL’INFORMAZIONE Dottorato di Ricerca in Tecnologie dell’Informazione XXVI Ciclo Pablo Mesejo Santiago AUTOMATIC SEGMENTATION OF ANATOMICAL STRUCTURES USING DEFORMABLE MODELS AND BIO-INSPIRED/SOFT COMPUTING DISSERTAZIONE PRESENTATA PER IL CONSEGUIMENTO DEL TITOLO DI DOTTORE DI RICERCA Gennaio 2014 UNIVERSITA` DEGLI STUDI DI PARMA DOTTORATO DI RICERCA IN TECNOLOGIE DELL’INFORMAZIONE XXVI Ciclo AUTOMATIC SEGMENTATION OF ANATOMICAL STRUCTURES USING DEFORMABLE MODELS AND BIO-INSPIRED/SOFT COMPUTING Coordinatore: Chiar.mo. Prof. Marco Locatelli Relatore: Chiar.mo. Prof. Stefano Cagnoni Autore: Pablo Mesejo Santiago Gennaio 2014 Dedicated to my mother and Sofia, with gratitude, respect and admiration. Contents Abstract 9 1 Introduction 10 Part I: Fundamentals 16 2 Theoretical Background 17 2.1 Medical Image Segmentation . 17 2.2 Deformable Models . 20 Parametric Deformable Models . 21 Geometric Deformable Models . 23 2.3 Medical Image Registration . 27 2.4 Texture and Gray Level Co-Occurrence Matrix . 29 2.5 Soft Computing . 31 Metaheuristics . 34 Classification problems . 44 3 Datasets 47 3.1 Medical Imaging . 47 iii CONTENTS iv 3.2 Microscopy Images . 49 3.3 Computed Tomography Images . 52 3.4 Magnetic Resonance Images . 53 4 Medical Image Segmentation using DMs and SC 62 4.1 Statistical Shape Models . 67 4.2 Level Set Methods . 81 Part II: Proposed Methods 90 5 Hippocampus Segmentation using ASMs and RF 93 5.1 Histological Images and Hippocampus . 93 5.2 DE-based hippocampus localization . 98 Best Reference Slice Selection . 98 Hippocampus Localization . 102 Target Function . 104 Experimental Results . 107 5.3 Segmentation using Iterative Otsu’s Thresholding Method and RF .
    [Show full text]
  • Procedural Representations for Computer Animation
    Encapsulated Models: Procedural Representations for Computer Animation DISSERTATION Presented in Partial Fulfillment of the Requirements for the Degree Doctor of Philosophy in the Graduate School of The Ohio State University By Stephen Forrest May, B.S., M.S. ***** The Ohio State University 1998 Dissertation Committee: Approved by Prof. Wayne E. Carlson, Adviser Prof. Richard E. Parent Adviser Prof. Neelam Soundarajan Department of Computer and Prof. Charles A. Csuri Information Science MANY PAGES DISCARDED 1.1.2 Historical Development of Computer Animation Systems Traditionally, animation systems have neatly filed themselves into one of two distinctly different classifications: scripting and interactive. Modern systems still can be classified in this manner, although increasingly the distinction between the two classifications is being blurred. 16 1.1.2.1 Scripting Systems The first computer animations were produced by writing programs to generate the an- imation using general purpose programming languages (e.g., Fortran). General purpose languages are flexible and inherently allow programmers to take advantage of conventional programming mechanisms (e.g., variables, subroutines, conditional statement execution, it- eration) and techniques (e.g., structured programming, object-oriented design, recursion) to produce animation. The main disadvantage of this approach is that many elements needed to generate animations (e.g., specifying geometric shapes, building hierarchies, generating output for renderers, applying transformations to objects) have to be reimplemented for each animation. The amount of work required to provide the underlying framework can easily outweigh the programming needed that is unique to the production of the animation task at hand. In response to the problems of using general purpose programming languages, re- searchers developed specialized programming languages, procedural animation languages, designed for the task of computer animation [30, 47, 60, 64, 65, 80, 104, 111, 113].
    [Show full text]
  • Physically Based Modeling: Principles and Practice Constrained Dynamics
    Physically Based Modeling: Principles and Practice Constrained Dynamics Andrew Witkin Robotics Institute Carnegie Mellon University Please note: This document is 1997 by Andrew Witkin. This chapter may be freely duplicated and distributed so long as no consideration is received in return, and this copyright notice remains intact. Constrained Dynamics Andrew Witkin School of Computer Science Carnegie Mellon University 1 Beyond penalty methods The idea of constrained particle dynamics is that our description of the system includes not only particles and forces, but restrictions on the way the particles are permitted to move. For example, we might constrain a particle to move along a specified curve, or require two particles to remain a specified distance apart. The problem of constrained dynamics is to make the particles obey Newton’s laws, and at the same time obey the geometric constraints. As we learned earlier, energy functions provide a sloppy, approximate constraint mechanism. A spring with rest length r makes the particles it connects “want” to be distance r apart. How- ever, the spring force competes with all other forces acting on the particles—gravity, other springs, forces applied by the user, etc. The constraint can only win this tug-of-war if its spring constant is large enough to overpower all competing influences, so that very small displacements induce large restoring forces. As we saw in the last section, this is really no solution because it gives rise to stiff differential equations which are all but numerically intractible. The use of extra energy terms to impose constraints is known as the penalty method.
    [Show full text]
  • Helping Artists Create Digital Music Videos Using Spacetime Constraints
    HELPING ARTISTS CREATE DIGITAL MUSIC VIDEOS USING SPACETIME CONSTRAINTS A Thesis In TCC 402 Presented to The Faculty of the School of Engineering and Applied Science University of Virginia In Partial Fulfillment of the Requirements for the Degree Bachelor of Science in Computer Science by John Middleton Rhoads March 25, 2002 On my honor as a University student, on this assignment I have neither given nor received unauthorized aid as defined by the Honor Guidelines for Papers in TCC Courses. John Middleton Rhoads Approved __________________________________ Date____________ Technical Advisor—Dave Brogan Approved______________________________________ Date______________ Technical Advisor—Bryan Pfaffenberger Preface As a double major in computer science and music my interest in this project is natural. I am quite interested in using my skills as a computer scientist to aid musicians in any way possible, and this project is an attempt to create a tool that will do just that. My secondary goal in taking on this project was to enable future students to more easily understand how to use spacetime constraints. The literature that currently exists on the subject is either organized poorly, or does not give enough detail to allow a skilled programmer to implement a spacetime constraints system without an extended amount of outside research. It is my goal to make this method accessible to more people in the hope that this powerful tool will be used more frequently. I’d like to take this opportunity to thank some of the people that made this project possible. My TCC advisors, Bryan Pfaffenberger and Helen Benet-Goodman, were of great help with the writing and organization of this paper.
    [Show full text]
  • Physically Based Modeling
    Physically Based Modeling Course Organizer David Baraff Pixar Animation Studios Physically based modeling has become an important new approach to computer animation and computer graphics modeling. Although physically based modeling is inherently a mathematical subject, the math in- volved needn’t be any more difficult nor esoteric than the math that underlies many other areas of computer graphics, such as ray tracing or surface modeling. Many papers on the subject have presupposed a special- ized mathematical background that many members of the computer graphics community lack. Consequently, many capable computer graphics practitioners, despite their interest in the subject, have simply been put off by the density of the math. This course addresses the need to make the principles and methods of physically based modeling accessible to a broader computer graphics audience—those who are familiar with mainstream computer graphics and have the usual basic computer graphics math, such as vector/matrix manipulations, but whose first year cal- culus course may be only dimly remem-bered. Course topics include modeling the dynamics of particle systems and rigid bodies, basic numerical methods for differential equations, simulation of deformable surfaces, collision detection, modeling energy functions and hard constraints, and the dynamics of collision and contact. SIGGRAPH ’99 COURSE NOTES A1 PHYSICALLY BASED MODELING Course Schedule 8:30 am Introduction 8:45 am Differential Equation Basics Witkin Vector fields and integral curves; initial value problems; basic numerical methods; modular implementation of differential equation solvers. 9:30 am Particle Dynamics Witkin F=ma; phase space; basic forces: gravity, drag, springs, etc. Simple particle colli- sions; structured implementation of interactive mass-and-spring systems.
    [Show full text]
  • Lecture-6-SIFT.Pdf
    CAP 5415 Computer Vision Dr. Mubarak Shah Univ. of Central Florida Lecture-6 SIFT: Detector and Descriptor SIFT: David Lowe, UBC Cited by 25688 SIFT - Key Point Extraction Stands for Scale Invariant Feature Transform Patented by university of British Columbia Similar to the one used in primate visual system (human, ape, monkey, etc.) Transforms image data into scale- invariant coordinates D. Lowe. Distinctive image features from scale-invariant key points., International Journal of Computer Vision 2004. Goal Extract distinctive invariant features Correctly matched against a large database of features from many images Invariance to image scale and rotation Robustness to Affine (rotation, scale, shear) distortion, Change in 3D viewpoint, Addition of noise, Change in illumination. Advantages Locality: features are local, so robust to occlusion and clutter Distinctiveness: individual features can be matched to a large database of objects Quantity: many features can be generated for even small objects Efficiency: close to real-time performance Invariant Local Features Steps for Extracting Key Points (SIF Points) Scale space peak selection Potential locations for finding features Key point localization Accurately locating the feature key points Orientation Assignment Assigning orientation to the key points Key point descriptor Describing the key point as a high dimensional vector (128) (SIFT Descriptor) Scales What should be sigma value for Canny and LoG edge detection? If use multiple sigma values (scales), how do you combine multiple edge maps? Marr-Hildreth: Spatial Coincidence assumption: Zerocrossings that coincide over several scales are physically significant. Andrew Witkin (July 22, 1952 – September 12, 2010) Andrew Witkin He did his BS at Columbia University in Psychology Ph.D.
    [Show full text]
  • A Differential Approach to Graphical Interaction
    A Differential Approach to Graphical Interaction Michael L. Gleicher November 18, 1994 gw EgEWREPIU School of Computer Science Carnegie Mellon University 5000 Forbes Avenue Pittsburgh, PA 15213-3891 Submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy. Thesis Committee: Andrew Witkin, Chair Paul Heckbert Brad Myers Robert Sproull, Sun Microsystems c 1994 by Michael L. Gleicher This research was supported in part by Apple Computer, an equipment grant from Silicon Graphics Inc., and a fellowship from the Schlumberger Foundation. The views and conclusions contained in this document are those of the author and should not be interpretted as representing the official policies, either expressed or implied, of these companies. Keywords: Constraints, Direct Manipulation, Interaction Techniques, User Inter- face Toolkits Abstract Direct manipulation has become the preferred interface for controlling graphical ob- jects. Despite its success, the ad hoc manner with which such interfaces have been designed and implemented restricts the types of interactive controls. This dissertation presents a new approach that provides a systematic method for implementing flexible, combinable interactive controls. This differential approach to graphical interaction uses constrained optimization to couple user controls to graphical objects in a manner that permits a variety of controls to be freely combined. The differential approach pro- vides a new set of abstractions that enable new types of interaction techniques and new ways of modularizing applications. The differential approach views graphical object manipulation as an equation solv- ing problem: Given the desired values for the user specified controls, find a configura- tion of the graphical objects that meet these constraints.
    [Show full text]
  • Spacetime Constraints
    ~ ComputerGraphics, Volume 22, Number 4, August 1988 l, Spacetime Constraints Andrew Witkin Michael Kass Schlumberger Palo Alto Research 3340 Hillview Avenue, Palo Alto, CA 9~30~ Abstract Siggraph '87 [12]. Although £uzo, Jr. showed us that the team of animator, keyframe system, and renderer can be Spacetime constraints are a new method for creating char- a powerful one, the responsibility for defining the motion acter animation. The animator specifies what the char- remains almost entirely with the animator. acter has to do, for instance, "jump from here to there, Some aspects of animation--personality and appeal, clearing a hurdle in between;" how the motion should be for example---will surely be left to the animator's artistry performed, for instance "don't waste energy," or "come and skill for a long time to come. However, many of the down hard enough to splatter whatever you land on;" the principles of animation are concerned with making the character's physical structure--the geometry, mass, con- character's motion look real at a basic mechanical level nectivity, etc. of the parts; and the physical resources, that ought to admit to formal physical treatment. Con- available to the character to accomplish the motion, for sider for example a jump exhibiting anticipation, squash- instance the character's muscles, a floor to push off from, and-stretch, and follow-through. Any creature--human or etc. The requirements contained in this description, to- lamp--can only accelerate its own center of mass by push- gether with Newton's laws, comprise a problem of con- ing on something else.
    [Show full text]