Twenty-First Century Waterfall: Animating Water Bottle Recycling Rates


This outreach animation was made to raise awareness about the surprisingly poor recycling rates of plastic water bottles.

Time-critical distributed contact for 6-DoF haptic rendering of adaptively sampled reduced deformable models

Jernej Barbič | Doug L. James

Proceedings of ACM SIGGRAPH Symposium on Computer Animation (SCA 2007), San Diego, CA, August 2007 (best paper award)


Real-time evaluation of distributed contact forces for rigid or deformable 3D objects is important for providing multi-sensory feedback in emerging real-time applications, such as 6-DoF haptic force-feedback rendering. Unfortunately, at very high temporal rates (1 kHz for haptics), there is often insufficient time to resolve distributed contact between geometrically complex objects.
In this paper, we present a spatially and temporally adaptive sample-based approach to approximate contact forces under hard real-time constraints. The approach is CPU based, and supports both rigid and reduced deformable models with complex geometry. Penalty-based contact forces are efficiently resolved using a multi-resolution point-based representation for one object, and a signed-distance oracle for the other. Hard real-time approximation of distributed contact forces uses multi-level progressive point-contact sampling, and exploits temporal coherence, graceful degradation and other optimizations. We present several examples of 6-DoF haptic rendering of geometrically complex rigid or deformable objects in distributed contact at real-time kilohertz rates.

Many-Worlds Browsing for Control of Multibody Dynamics

Christopher D. Twigg | Doug L. James

ACM Transactions on Graphics (SIGGRAPH 2007)


Animation techniques for controlling passive simulation are commonly based on an optimization paradigm: the user provides goals a priori, and sophisticated numerical methods minimize a cost function that represents these goals. Unfortunately, for multibody systems with discontinuous contact events these optimization problems can be highly nontrivial to solve, and many-hour offline optimizations, unintuitive parameters, and convergence failures can frustrate end-users and limit usage. On the other hand, users are quite adaptable, and systems which provide interactive feedback via an intuitive interface can leverage the user’s own abilities to quickly produce interesting animations. However, the online computation necessary for interactivity limits scene complexity in practice.
We introduce Many-Worlds Browsing, a method which circumvents these limits by exploiting the speed of multibody simulators to compute numerous example simulations in parallel (offline and online), and allow the user to browse and modify them interactively. We demonstrate intuitive interfaces through which the user can select among the examples and interactively adjust those parts of the scene that don’t match his requirements. We show that using a combination of our techniques, unusual and interesting results can be generated for moderately sized scenes with under an hour of user time. Scalability is demonstrated by sampling much larger scenes using modest offline computations.


FastLSM: Fast Lattice Shape Matching for Robust Real-Time Deformation

Alec R. Rivers | Doug L. James

ACM Transactions on Graphics (SIGGRAPH 2007)


We introduce a simple technique that enables robust approximation of volumetric, large-deformation dynamics for real-time or large-scale offline simulations. We propose Lattice Shape Matching, an extension of deformable shape matching to regular lattices with embedded geometry; lattice vertices are smoothed by convolution of rigid shape matching operators on local lattice regions, with the effective mechanical stiffness specified by the amount of smoothing via region width. Since the naive method can be very slow for stiff models — per-vertex costs scale cubically with region width — we provide a fast summation algorithm, Fast Lattice Shape Matching (FastLSM), that exploits the inherent summation redundancy of shape matching and can provide large-region matching at constant per-vertex cost. With this approach, large lattices can be simulated in linear time. We present several examples and benchmarks of an efficient CPU implementation, including many dozens of soft bodies simulated at real-time rates on a typical desktop machine.

Mesh Ensemble Motion Graphs: Data-driven Mesh Animation with Constraints

Doug L. James | Christopher D. Twigg | Andrew Cove | Robert Y. Wang

ACM Transactions on Graphics, 2007


We describe a technique for using space-time cuts to smoothly transition between stochastic mesh animation clips involving numerous deformable mesh groups while subject to physical constraints. These transitions are used to construct Mesh Ensemble Motion Graphs for interactive data-driven animation of high-dimensional mesh animation datasets, such as those arising from expensive physical simulations of deformable objects blowing in the wind. We formulate the transition computation as an integer programming problem, and introduce a novel randomized algorithm to compute transitions subject to geometric noninterpenetration constraints.

VideoMotionDatabaseSIGGRAPH 2006 Sketch

Precomputed Acoustic Transfer: Output-sensitive, accurate sound generation for geometrically complex vibration sources

Doug L. James | Jernej Barbić | Dinesh K. Pai

ACM Transactions on Graphics (SIGGRAPH 2006)


Simulating sounds produced by realistic vibrating objects is challenging because sound radiation involves complex diffraction and interreflection effects that are very perceptible and important. These wave phenomena are well understood, but have been largely ignored in computer graphics due to the high cost and complexity of computing them at audio rates. We describe a new algorithm for real-time synthesis of realistic sound radiation from rigid objects. We start by precomputing the linear vibration modes of an object, and then relate each mode to its sound pressure field, or acoustic transfer function, using standard methods from numerical acoustics. Each transfer function is then approximated to a specified accuracy using low-order multipole sources placed near the object. We provide a low-memory, multilevel, randomized algorithm for optimized source placement that is suitable for complex geometries. At runtime, we can simulate new interaction sounds by quickly summing contributions from each modes equivalent multipole sources. We can efficiently simulate global effects such as interreflection and changes in sound due to listener location. The simulation costs can be dynamically traded-off for sound quality. We present several examples of sound generation from physically based animations.

Video (technical)Video (falling chairs)Slides (PPT)

Skinning Mesh Animations

Doug L. James and Christopher D. Twigg

ACM Transactions on Graphics (ACM SIGGRAPH 2005)


We extend approaches for skinning characters to the general setting of skinning deformable mesh animations. We provide an automatic algorithm for generating progressive skinning approximations, that is particularly efficient for pseudo-articulated motions. Our contributions include the use of nonparametric mean shift clustering of high-dimensional mesh rotation sequences to automatically identify statistically relevant bones, and robust least squares methods to determine bone transformations, bone-vertex influence sets, and vertex weight values. We use a low-rank data reduction model defined in the undeformed mesh configuration to provide progressive convergence with a fixed number of bones. We show that the resulting skinned animations enable efficient hardware rendering, rest pose editing, and deformable collision detection. Finally, we present numerous examples where skins were automatically generated using a single set of parameter values.


Real-Time Subspace Integration of St.Venant-Kirchhoff Deformable Models

Jernej Barbič | Doug L. James

ACM Transactions on Graphics (SIGGRAPH 2005)


In this paper, we present an approach for fast subspace integration of reduced-coordinate nonlinear deformable models that is suitable for interactive applications in computer graphics and haptics. Our approach exploits dimensional model reduction to build reduced-coordinate deformable models for objects with complex geometry. We exploit the fact that model reduction on large deformation models with linear materials (as commonly used in graphics) result in internal force models that are simply cubic polynomials in reduced coordinates. Coefficients of these polynomials can be precomputed, for efficient runtime evaluation. This allows simulation of nonlinear dynamics using fast implicit Newmark subspace integrators, with subspace integration costs independent of geometric complexity. We present two useful approaches for generating low-dimensional subspace bases: modal derivatives and an interactive sketch. Mass-scaled principal component analysis (mass-PCA) is suggested for dimensionality reduction. Finally, several examples are given from computer animation to illustrate high performance, including force-feedback haptic rendering of a complicated object undergoing large deformations.


BD-Tree: Output-Sensitive Collision Detection for Reduced Deformable Models

Doug L. James | Dinesh K. Pai

ACM Transactions on Graphics (ACM SIGGRAPH 2004)


We introduce the Bounded Deformation Tree, or BD-Tree, which can perform collision detection with reduced deformable models at costs comparable to collision detection with rigid objects. Reduced deformable models represent complex deformations as linear superpositions of arbitrary displacement fields, and are used in a variety of applications of interactive computer graphics. The BD-Tree is a bounding sphere hierarchy for output-sensitive collision detection with such models. Its bounding spheres can be updated after deformation in any order, and at a cost independent of the geometric complexity of the model; in fact the cost can be as low as one multiplication and addition per tested sphere, and at most linear in the number of reduced deformation coordinates. We show that the BD-Tree is also extremely simple to implement, and performs well in practice for a variety of real-time and complex off-line deformable simulation examples.

VideoSlidesETheater (Webpage)ETheater (YouTube)ETheater (mov)Niagara (YouTube)Niagara (mov)

Squashing Cubes: Automating Deformable Model Construction for Graphics

Doug L. James | Jernej Barbic | Christopher D. Twigg

Proceedings of the SIGGRAPH 2004 Conference on Sketches & Applications. ACM Press, August 2004


Precomputing Interactive Dynamic Deformable Scenes

Doug L. James | Kayvon Fatahalian

ACM Transactions on Graphics (ACM SIGGRAPH 2003)


We present an approach for precomputing data-driven models of interactive physically based deformable scenes. The method permits real-time hardware synthesis of nonlinear deformation dynamics, including self-contact and global illumination effects, and supports real-time user interaction. We use data-driven tabulation of the system's deterministic state space dynamics, and model reduction to build efficient low-rank parameterizations of the deformed shapes. To support runtime interaction, we also tabulate impulse response functions for a palette of external excitations. Although our approach simulates particular systems under very particular interaction conditions, it has several advantages. First, parameterizing all possible scene deformations enables us to precompute novel reduced coparameterizations of global scene illumination for low-frequency lighting conditions. Second, because the deformation dynamics are precomputed and parameterized as a whole, collisions are resolved within the scene during precomputation so that runtime self-collision handling is implicit. Optionally, the data-driven models can be synthesized on programmable graphics hardware, leaving only the low-dimensional state space dynamics and appearance data models to be computed by the main CPU.

Video (YouTube)Video (AVI)TechReport (CMU RI TR-03-33)Kayvon's ugrad thesis

EigenSkin: Real Time Large Deformation Character Skinning in Hardware

Paul G. Kry | Doug L. James | Dinesh K. Pai

ACM SIGGRAPH Symposium on Computer Animation, pp. 153-160, 2002


We present a technique which allows subtle nonlinear quasi-static deformations of articulated characters to be compactly approximated by data-dependent eigenbases which are optimized for real time rendering on commodity graphics hardware. The method extends the common Skeletal-Subspace Deformation (SSD) technique to provide efficient approximations of the complex deformation behaviours exhibited in simulated, measured, and artist-drawn characters. Instead of storing displacements for key poses (which may be numerous), we precompute principal components of the deformation influences for individual kinematic joints, and so construct error-optimal eigenbases describing each joint's deformation subspace. Pose-dependent deformations are then expressed in terms of these reduced eigenbases, allowing precomputed coefficients of the eigenbasis to be interpolated at run time. Vertex program hardware can then efficiently render nonlinear skin deformations using a small number of eigendisplacements stored in graphics hardware. We refer to the final resulting character skinning construct as the model's EigenSkin. Animation results are presented for a very large nonlinear finite element model of a human hand rendered in real time at minimal cost to the main CPU.

Video"Shadow Puppets" Video

DyRT: Dynamic Response Textures for Real Time Deformation Simulation with Graphics Hardware

Doug L. James | Dinesh K. Pai

ACM Transactions on Graphics (ACM SIGGRAPH 2002), 21(3), pp. 582-585, 2002.


In this paper we describe how to simulate geometrically complex, interactive, physically-based, volumetric, dynamic deformation models with negligible main CPU costs. This is achieved using a Dynamic Response Texture, or DyRT, that can be mapped onto any conventional animation as an optional rendering stage using commodity graphics hardware. The DyRT simulation process employs precomputed modal vibration models excited by rigid body motions. We present several examples, with an emphasis on bone-based character animation for interactive applications.


Real Time Simulation of Multizone Elastokinematic Models

Doug L. James | Dinesh K. Pai

2002 IEEE Intl. Conference on Robotics and Automation, Washington DC, May 2002.


We introduce precomputed multizone elastokinematic models for interactive simulation of multibody kinematic systems which include elastostatic deformations. This enables an efficient form of domain decomposition, suitable for interactive simulation of stiff flexible structures for real time applications such as interactive assembly. One advantage of multizone models is that each zone can have small strains, and hence be modeled with linear elasticity, while the entire multizone/multibody system admits large nonlinear relative strains. This permits fast capacitance matrix algorithms and precomputed Green's functions to be used for efficient real time simulation. Examples are given for a human finger modeled as a kinematic chain with a compliant elastic covering.

Video(finger motion)Video(contact1)Video(contact2)

Multiresolution Green’s Function Methods for Interactive Simulation of Large-scale Elastostatic Objects

Doug L. James | Dinesh K. Pai

ACM Transactions on Graphics, 22(1), pp. 47-82, 2003.


We present a framework for low-latency interactive simulation of linear elastostatic models, and other systems arising from linear elliptic partial differential equations, which makes it feasible to interactively simulate large-scale physical models. The deformation of the models is described using precomputed Green's functions (GFs), and runtime boundary value problems (BVPs) are solved using existing Capacitance Matrix Algorithms (CMAs). Multiresolution techniques are introduced to control the amount of information input and output from the solver thus making it practical to simulate and store very large models. A key component is the efficient compressed representation of the precomputed GFs using second-generation wavelets on surfaces. This aids in reducing the large memory requirement of storing the dense GF matrix, and the fast inverse wavelet transform allows for fast summation methods to be used at runtime for response synthesis. Resulting GF compression factors are directly related to interactive simulation speedup, and examples are provided with hundredfold improvements at modest error levels. We also introduce a multiresolution constraint satisfaction technique formulated as an hierarchical CMA, so named because of its use of hierarchical GFs describing the response due to hierarchical basis constraints. This direct solution approach is suitable for hard real time simulation since it provides a mechanism for gracefully degrading to coarser resolution constraint approximations. The GFs' multiresolution displacement fields also allow for runtime adaptive multiresolution rendering.


Multiresolution Green’s Function Methods for Interactive Simulation of Large-scale Elastostatic Objects and other Physical Systems in Equilibrium

Doug L. James

Ph.D. Thesis, Institute of Applied Mathematics, UBC, 2001.


This thesis presents a framework for low-latency interactive simulation of linear elastostatic models and other systems associated with linear elliptic partial differential equations. This approach makes it feasible to interactively simulate large-scale physical models.
Linearity is exploited by formulating the boundary value problem (BVP) solution in terms of Green’s functions (GFs) which may be precomputed to provide speed and cheap lookup operations. Runtime BVPs are solved using a collection of Capacitance Matrix Algorithms (CMAs) based on the Sherman-Morrison-Woodbury formula. Temporal coherence is exploited by caching and reusing, as well as sequentially updating, previous capacitance matrix inverses.
Multiresolution enhancements make it practical to simulate and store very large models. Efficient compressed representations of precomputed GFs are obtained using second-generation wavelets defined on surfaces. Fast inverse wavelet transforms allow fast summation methods to be used to accelerate runtime BVP solution. Wavelet GF compression factors are directly related to interactive simulation speedup, and examples are provided with hundredfold improvements at modest error levels. Furthermore, hierarchical constraints are defined using hierarchical basis functions, and related hierarchical GFs are then used to construct an hierarchical CMA. This direct solution approach is suitable for hard real time simulation since it provides a mechanism for gracefully degrading to coarser resolution approximations, and the wavelet representations allow for runtime adaptive multiresolution rendering.
These GF CMAs are well-suited to interactive haptic applications since GFs allow random access to solution components and the capacitance matrix is the contact compliance used for high-fidelity force feedback rendering. Examples are provided for distributed and point-like interactions.
Precomputed multizone kinematic GF models are also considered, with examples provided for character animation in computer graphics.
Finally, we briefly discuss the generation of multiresolution GF models using either numerical precomputation methods or reality-based robotic measurement.

Exam Program

Scanning Physical Interaction Behavior of 3D Objects

Dinesh K. Pai | Kees van den Doel | Doug L. James | Jochen Lang | John E. Lloyd | Joshua L. Richmond | Som H. Yau

Proceedings of ACM SIGGRAPH 2001, pp. 87-96, 2001.


We describe a system for constructing computer models of several aspects of physical interaction behavior, by scanning the response of real objects. The behaviors we can successfully scan and model include deformation response, contact textures for interaction with force-feedback, and contact sounds. The system we describe uses a highly automated robotic facility that can scan behavior models of whole objects. We provide a comprehensive view of the modeling process, including selection of model structure, measurement, estimation, and rendering at interactive rates. The results are demonstrated with two examples: a soft stuffed toy which has significant deformation behavior, and a hard clay pot which has significant contact textures and sounds. The results described here make it possible to quickly construct physical interaction models of objects for applications in games, animation, and e-commerce.


A Unified Treatment of Elastostatic Contact Simulation for Real Time Haptics

Doug L. James | Dinesh K. Pai

Haptics-e, The Electronic Journal of Haptics Research (, Vol. 2, Number 1, September 27, 2001.


We describe real-time, physically-based simulation algorithms for haptic interaction with elastic objects. Simulation of contact with elastic objects has been a challenge, due to the complexity of physically accurate simulation and the difficulty of constructing useful approximations suitable for real time interaction. We show that this challenge can be effectively solved for many applications. In particular global deformation of linear elastostatic objects can be efficiently solved with low run-time computational costs, using precomputed Green's functions and fast low-rank updates based on Capacitance Matrix Algorithms. The capacitance matrices constitute exact force response models, allowing contact forces to be computed much faster than global deformation behavior. Vertex pressure masks are introduced to support the convenient abstraction of localized scale-specific point-like contact with an elastic and/or rigid surface approximated by a polyhedral mesh. Finally, we present several examples using the CyberGlove and PHANToM haptic interfaces.

PDF (updated timings in book chapter)Video (CyberGlove grasping)Video (earliest Phantom demos)Video (banana bicycle seat)PDF (PUG2000 workshop paper)

ArtDefo: Accurate Real Time Deformable Objects

Doug L. James | Dinesh K. Pai

Proceedings of ACM SIGGRAPH 99, pp. 65-72, 1999.


We present an algorithm for fast, physically accurate simulation of deformable objects suitable for real time animation and virtual environment interaction. We describe the boundary integral equation formulation of static linear elasticity as well as the related Boundary Element Method (BEM) discretization technique. In addition, we show how to exploit the coherence of typical interactions to achieve low latency; the boundary formulation lends itself well to a fast update method when a few boundary conditions change. The algorithms are described in detail with examples from ArtDefo, our implementation.

© 2017 Doug L. James All Rights Reserved. | Contact