Contact
This site is managed by me, Christopher Batty, a CS prof at the University of Waterloo.
You can reach me by
Email or via Mastodon, or look me up on the Web.-
Recent Posts
- Machine Learning Operator Lexicon for Partial Differential Equation Solvers on Irregular and Sparse Domains
- Fast Cutting of Cage Based Deformation with Walk on Spheres
- Flamescapes: Simulating the Wildlandfire Urban Interface
- Reconstructing Physically Stable 3D Scenes from a Single Image
- Multi-level Quadrature for Projective Dynamics
Recent Collections
Researchers
- Adam Bargteil
- Afonso Paiva
- Albert Chern
- Alec Jacobson
- Alexandre Mercier-Aubin
- Alexey Stomakhin
- Andreas Kolb
- Andrew Selle
- Baoquan Chen
- Barbara Solenthaler
- Bedrich Benes
- Ben Jones
- Bernhard Thomaszewski
- Bin Wang
- Bo Ren
- Bo Zhu
- Breannan Smith
- Byungmoon Kim
- Camille Schreck
- Cem Yuksel
- Chang-Hun Kim
- Changxi Zheng
- Chenfanfu Jiang
- Chenfeng Li
- Chris Wojtan
- Christian Hafner
- Christopher Batty
- Craig Schroeder
- Dan Casas
- Daniele Panozzo
- Danny Kaufman
- David Hyde
- David I.W. Levin
- Demetri Terzopoulos
- Denis Zorin
- Derek Nowrouzezahrai
- Dinesh Manocha
- Dinesh Pai
- Dominik L. Michels
- Doug James
- Eftychios Sifakis
- Egor Larionov
- Eitan Grinspun
- Enhua Wu
- Eric Paquette
- Etienne Vouga
- Fabrice Neyret
- Fernando de Goes
- Florence Bertails
- Francois Faure
- Gilles Daviet
- Greg Turk
- Guillaume Cordonnier
- Huamin Wang
- Hyeong Seok Ko
- Insung Ihm
- Jan Bender
- Jarek Rossignac
- Jernej Barbic
- Jerry Tessendorf
- Jessica Hodgins
- Jin Huang
- Jiong Chen
- John Keyser
- Jonathan Cohen
- Jonathan Shewchuk
- Jos Stam
- Joseph Teran
- Ken Museth
- Kenny Erleben
- Kiwon Um
- Kui Wu
- Ladislav Kavan
- Lei Lan
- Li Sheng
- Marco Fratarcangeli
- Marie-Paule Cani
- Mario Botsch
- Mark Pauly
- Mark Sussman
- Markus Gross
- Mathieu Desbrun
- Matthias Müller-Fischer
- Matthias Teschner
- Max Wardetzky
- Melina Skouras
- Mengyu Chu
- Miguel Otaduy
- Miles Macklin
- Min Tang
- Minchen Li
- Ming Gao
- Ming Lin
- Mirela Ben-Chen
- Mridul Aanjaneya
- Nadia Magnenat-Thalmann
- Nils Thuerey
- Nobuyuki Umetani
- Nuttapong Chentanez
- Paul Kry
- Pete Shirley
- Peter Schröder
- Peter Yichen Chen
- Philip Dutre
- Rahul Narain
- Raymond Yun Fei
- Ron Fedkiw
- Rook Bridson
- Ryoichi Ando
- Sheldon Andrews
- Shi-Min Hu
- Shinjiro Sueda
- Shiying Xiong
- Soren Pirk
- Stefan Jeschke
- Stelian Coros
- Stephanie Wang
- Sunil Hadap
- Tae-Yong Kim
- Takahiro Harada
- Takashi Kanai
- Tamar Shinar
- Tao Du
- Ted Kim
- Teseo Schneider
- Tetsuya Takahashi
- Tiantian Liu
- Timothy Langlois
- Tomoyuki Nishita
- Toshiya Hachisuka
- Tuur Stuyck
- Ulrich Pinkall
- Vinicius C. Azevedo
- Wei Li
- Weiwei Xu
- Wojtek Palubicki
- Xiaokun Wang
- Xiaopei Liu
- Xiaowei He
- Xifeng Gao
- Xubo Yang
- Ye Zhao
- Yin Yang
- Yiying Tong
- Yizhou Yu
- Yonghao Yue
- Yoshinori Dobashi
- Young J. Kim
- Yun (Raymond) Fei
- Zherong Pan
- Zoran Popovic
Software and Companies
- Algoryx Simulation AB
- Blender
- Box2D
- Bullet
- Chipmunk Physics
- CMLabs
- DART toolkit
- Erwin Coumans / Bulletphysics
- FIFTY2 / PreonLab
- FumeFX (Sitni Sati)
- Havok
- Houdini (by SideFX)
- JangaFX (LiquiGen / EmberGen)
- MantaFlow
- Maya Bifrost
- Numerion Software (Carbon)
- NVIDIA Flex
- Open Dynamics Engine
- openSourceVFX.org
- Phoenix FD (Chaos Group)
- Position-Based Dynamics library
- Pulldownit
- RealFlow (NextLimit)
- SCISIM (rigid bodies)
- SOFA Framework
- SPlisHSPlasH – SPH framework
- Syflex
- Vega FEM Library
- Vital Mechanics
- X-Particles (Insydium)
Archives
- October 2026
- September 2026
- August 2026
- July 2026
- June 2026
- May 2026
- August 2025
- July 2025
- June 2025
- May 2025
- February 2025
- January 2025
- December 2024
- November 2024
- October 2024
- September 2024
- August 2024
- July 2024
- June 2024
- May 2024
- April 2024
- January 2024
- December 2023
- November 2023
- October 2023
- September 2023
- August 2023
- July 2023
- June 2023
- May 2023
- January 2023
- December 2022
- October 2022
- September 2022
- August 2022
- June 2022
- May 2022
- April 2022
- March 2022
- January 2022
- December 2021
- October 2021
- September 2021
- August 2021
- June 2021
- May 2021
- April 2021
- February 2021
- January 2021
- December 2020
- November 2020
- October 2020
- September 2020
- August 2020
- July 2020
- June 2020
- May 2020
- April 2020
- March 2020
- December 2019
- November 2019
- October 2019
- September 2019
- August 2019
- July 2019
- June 2019
- May 2019
- April 2019
- March 2019
- January 2019
- December 2018
- November 2018
- October 2018
- September 2018
- August 2018
- July 2018
- June 2018
- May 2018
- April 2018
- March 2018
- February 2018
- January 2018
- December 2017
- October 2017
- September 2017
- August 2017
- July 2017
- June 2017
- May 2017
- April 2017
- March 2017
- February 2017
- December 2016
- October 2016
- September 2016
- July 2016
- June 2016
- May 2016
- April 2016
- March 2016
- February 2016
- January 2016
- December 2015
- November 2015
- October 2015
- September 2015
- August 2015
- July 2015
- June 2015
- May 2015
- April 2015
- March 2015
- February 2015
- January 2015
- November 2014
- October 2014
- September 2014
- August 2014
- July 2014
- June 2014
- May 2014
- March 2014
- February 2014
- December 2013
- November 2013
- October 2013
- September 2013
- August 2013
- July 2013
- June 2013
- May 2013
- April 2013
- March 2013
- February 2013
- January 2013
- December 2012
- November 2012
- October 2012
- September 2012
- August 2012
- July 2012
- June 2012
- May 2012
- April 2012
- March 2012
- February 2012
- January 2012
- December 2011
- October 2011
- September 2011
- August 2011
- July 2011
- May 2011
- April 2011
- February 2011
- January 2011
- December 2010
- November 2010
- October 2010
- September 2010
- August 2010
- July 2010
- June 2010
- May 2010
- April 2010
- March 2010
- February 2010
- January 2010
- December 2009
- October 2009
- September 2009
- August 2009
- July 2009
- June 2009
- May 2009
- April 2009
- February 2009
- January 2009
- December 2008
- October 2008
- September 2008
- August 2008
- June 2008
- May 2008
- April 2008
- February 2008
- January 2008
- December 2007
- October 2007
- September 2007
- August 2007
- July 2007
- June 2007
- May 2007
- April 2007
- March 2007
Filament based smoke with vortex shedding and variational reconnection
Simulating fluids based on vortex filaments is highly attractive for the creation of special effects because it gives artists full control over the simulation using familiar tools like curve editors or the scripted generation of new vortex filaments over time. Because filaments offer a very compact description of fluid flow, real time applications like games or virtual reality are also possible. We present a complete model that includes moving obstacles with vortex shedding, all represented as filaments. Due to variational reconnection the long-time behavior of our method is excellent: Energy and momentum stay constant within reasonable bounds and computational complexity does not increase over time.
Posted in Uncategorized
Comments Off on Filament based smoke with vortex shedding and variational reconnection
Volume Contact Constraints at Arbitrary Resolution
We introduce a new method for simulating frictional contact between volumetric objects using interpenetration volume constraints. When applied to complex geometries, our formulation results in dramatically simpler systems of equations than those of traditional mesh contact models. Contact between highly detailed meshes can be simplified to a single unilateral constraint equation, or accurately processed at arbitrary geometry-independent resolution with simultaneous sticking and sliding across contact patches.
We exploit fast GPU methods for computing layered depth images, which provides us with the intersection volumes and gradients necessary to formulate the contact equations as linear complementarity problems. Straightforward and popular numerical methods, such as projected Gauss-Seidel, can be used to solve the system.
We demonstrate our method in a number of scenarios and present results involving both rigid and deformable objects at interactive rates.
Posted in Uncategorized
Comments Off on Volume Contact Constraints at Arbitrary Resolution
Subspace Self-Collision Culling
We show how to greatly accelerate self-collision detection (SCD) for reduced deformable models. Given a triangle mesh and a set of deformation modes, our method precomputes Subspace Self-Collision Culling (SSCC) certificates which, if satisfied, prove the absence of self-collisions for large parts of the model. At runtime, bounding volume hierarchies augmented with our certificates can aggressively cull overlap tests and reduce hierarchy updates. Our method supports both discrete and continuous SCD, can handle complex geometry, and makes no assumptions about geometric smoothness or normal bounds. It is particularly effective for simulations with modest subspace deformations, where it can often verify the absence of self-collisions in constant time. Our certificates enable low amortized costs, in time and across many objects in multi-body dynamics simulations. Finally, SSCC is effective enough to support self-collision tests at audio rates, which we demonstrate by producing the first sound simulations of clattering objects.
Posted in Uncategorized
Comments Off on Subspace Self-Collision Culling
Dynamic Local Remeshing for Elastoplastic Simulation
We propose a finite element simulation method that addresses the full range of material behavior, from purely elastic to highly plastic, for physical domains that are substantially reshaped by plastic flow, fracture, or large elastic deformations. To mitigate artificial plasticity, we maintain a simulation mesh in both the current state and the rest shape, and store plastic offsets only to represent the non-embeddable portion of the plastic deformation. To maintain high element quality in a tetrahedral mesh undergoing gross changes, we use a dynamic meshing algorithm that attempts to replace as few tetrahedra as possible, and thereby limits the visual artifacts and artificial diffusion that would otherwise be introduced by repeatedly remeshing the domain from scratch. Our dynamic mesher also locally refines and coarsens a mesh, and even creates anisotropic tetrahedra, wherever a simulation requests it. We illustrate these features with animations of elastic and plastic behavior, extreme deformations, and fracture.
Posted in Uncategorized
Comments Off on Dynamic Local Remeshing for Elastoplastic Simulation
Example-Based Wrinkle Synthesis for Clothing Animation
This paper describes a method for animating the appearance of clothing, such as pants or a shirt, that fits closely to a figure’s body. Compared to flowing cloth, such as loose dresses or capes, these types of garments involve nearly continuous collision contact and small wrinkles, that can be troublesome for traditional cloth simulation methods. Based on the observation that the wrinkles in close-fitting clothing behave in a predominantly kinematic fashion, we have developed an example-based wrinkle synthesis technique. Our method drives wrinkle generation from the pose of the figure’s kinematic skeleton. This approach allows high quality clothing wrinkles to be combined with a coarse cloth simulation that computes the global and dynamic aspects of the clothing motion. While the combined results do not exactly match a high-resolution reference simulation, they do capture many of the characteristic fine-scale features and wrinkles. Further, the combined system runs at interactive rates, making it suitable for applications where high-resolution offline simulations would not be a viable option. The wrinkle synthesis method uses a precomputed database built by simulating the high-resolution clothing as the articulated figure is moved over a range of poses. In principle, the space of poses is exponential in the total number of degrees of freedom; however clothing wrinkles are primarily affected by the nearest joints, allowing each joint to be processed independently. During synthesis, mesh interpolation is used to consider the influence of multiple joints, and combined with a coarse simulation to produce the final results at interactive rates.
Posted in Uncategorized
Comments Off on Example-Based Wrinkle Synthesis for Clothing Animation
A Practical Simulation of Dispersed Bubble Flow
In this paper, we propose a simple and efficient framework for simulating dispersed bubble flow. Instead of modeling the complex hydrodynamics of numerous small bubbles explicitly, our method approximates the average motion of these bubbles using a continuum multiphase solver. Then, the subgrid interactions among bubbles are computed using our new stochastic solver. Using the proposed scheme, we can efficiently simulate complex scenes with millions of bubbles.
Posted in Uncategorized
Comments Off on A Practical Simulation of Dispersed Bubble Flow
Star-Contours for Efficient Hierarchical Self-Collision Detection
Collision detection is a problem that has often been addressed efficiently with the use of hierarchical culling data structures. In the subproblem of self-collision detection for triangle meshes, however, such hierarchical data structures lose much of their power, because triangles adjacent to each other cannot be distinguished from actually colliding ones unless individually tested. Shape regularity of surface patches, described in terms of orientation and contour conditions, was proposed long ago as a culling criterion for hierarchical self-collision detection. However, to date, algorithms based on shape regularity had to trade conservativeness for efficiency, because there was no known algorithm for efficiently performing 2D contour self-intersection tests. In this paper, we introduce a star-contour criterion that is amenable to hierarchical computations. Together with a thorough analysis of the tree traversal process in hierarchical self-collision detection, it has led us to novel hierarchical data structures and algorithms for efficient yet conservative self-collision detection. We demonstrate the application of our algorithm to several example animations, and we show that it consistently outperforms other approaches.
Star-Contours for Efficient Hierarchical Self-Collision Detection
Posted in Uncategorized
Comments Off on Star-Contours for Efficient Hierarchical Self-Collision Detection
Physics-Inspired Topology Changes for Thin Fluid Features
We propose a mesh-based surface tracking method for fluid animation that both preserves fine surface details and robustly adjusts the topology of the surface in the presence of arbitrarily thin features like sheets and strands. We replace traditional re-sampling methods with a convex hull method for connecting surface features during topological changes. This technique permits arbitrarily thin fluid features with minimal re-sampling errors by reusing points from the original surface. We further reduce re-sampling artifacts with a subdivision-based mesh-stitching algorithm, and we use a higher order interpolating subdivision scheme to determine the location of any newly-created vertices. The resulting algorithm efficiently produces detailed fluid surfaces with arbitrarily thin features while maintaining a consistent topology with the underlying fluid simulation.
Posted in Uncategorized
Comments Off on Physics-Inspired Topology Changes for Thin Fluid Features
A Multiscale Approach to Mesh-based Surface Tension
We present an approach to simulate flows driven by surface tension based on triangle meshes. Our method consists of two simulation layers: the first layer is an Eulerian method for simulating surface tension forces that is free from typical strict time step constraints. The second simulation layer is a Lagrangian finite element method that simulates sub-grid scale wave details on the fluid surface. The surface wave simulation employs an unconditionally stable, symplectic time integration method that allows for a high propagation speed due to strong surface tension. Our approach can naturally separate the grid- and sub-grid scales based on a volume-preserving mean curvature flow. As our model for the sub-grid dynamics enforces a local conservation of mass, it leads to realistic pinch off and merging effects. In addition to this method for simulating dynamic surface tension effects, we also present an efficient non-oscillatory approximation for capturing damped surface tension behavior. These approaches allow us to efficiently simulate complex phenomena associated with strong surface tension, such as Rayleigh-Plateau instabilities and crown splashes, in a short amount of time.
Posted in Uncategorized
Comments Off on A Multiscale Approach to Mesh-based Surface Tension
Unified Simulation of Elastic Rods, Shells, and Solids
We develop an accurate, unified treatment of elastica. Following the method of resultant-based formulation to its logical extreme, we derive a higher-order integration rule, or elaston, measuring stretching, shearing, bending, and twisting along any axis. The theory and accompanying implementation do not distinguish between forms of different dimension (solids, shells, rods), nor between manifold regions and non-manifold junctions. Consequently, a single code accurately models a diverse range of elastoplastic behaviors, including buckling, writhing, cutting and merging. Emphasis on convergence to the continuum sets us apart from early unification efforts.
Posted in Uncategorized
1 Comment