Real-Time Control of Physically Based Simulations Using Gentle Forces

Recent advances have brought real-time physically based simulation within reach, but simulations are still difficult to control in real time. We present interactive simulations of passive systems such as deformable solids or fluids that are not only fast, but also directable: they follow given input trajectories while simultaneously reacting to user input and other unexpected disturbances. We achieve such directability using a real-time controller that runs in tandem with a real-time physically based simulation. To avoid stiff and overcontrolled systems where the natural dynamics are overpowered, the injection of control forces has to be minimized. This search for gentle forces can be made tractable in real-time by linearizing the system dynamics around the input trajectory, and then using a time-varying linear quadratic regulator to build the controller. We show examples of controlled complex deformable solids and fluids, demonstrating that our approach generates a requested fixed outcome for reasonable user inputs, while simultaneously providing runtime motion variety.

Real-time Control of Physically Based Simulations using Gentle Forces

Staggered Projections for Frictional Contact in Multibody Systems

We present a new discrete velocity-level formulation of frictional contact dynamics that reduces to a pair of coupled projections and introduce a simple fixed-point property of this coupled system. This allows us to construct a novel algorithm for accurate frictional contact resolution based on a simple staggered sequence of projections. The algorithm accelerates performance using warm starts to leverage the potentially high temporal coherence between contact states and provides users with direct control over frictional accuracy. Applying this algorithm to rigid and deformable systems, we obtain robust and accurate simulations of frictional contact behavior not previously possible, at rates suitable for interactive haptic simulations, as well as large-scale animations. By construction, the proposed algorithm guarantees exact, velocity-level contact constraint enforcement and obtains long-term stable and robust integration. Examples are given to illustrate the performance, plausibility and accuracy of the obtained solutions.

Staggered Projections for Frictional Contact in Multibody Systems

Efficient Contact Modeling using Compliance Warping

Precise contact modeling is essential when simulating rigid or deformable objects in interaction. Yet, most recent work in computer graphics has focused on the computation of the motion or deformation of objects, and little has been done to model the interaction between simulated objects. In this paper, we propose a novel and very efficient approach for precise computation of contact response between various types of objects commonly used in computer animation. Our approach represents the objects motion as a free motion and a corrective motion. The corrective motion uses an efficient contact model, based on an approximation of the behavior model, but still follows Signorini and Coulomb laws for contact and friction modeling. Our approach guarantees no interpenetration at the end of the time step, and only introduces a minimal error in the objects motion. We illustrate our approach using an approximate (warped) compliance in the case of non-linear deformable models. This speeds-up the contact response by several orders of magnitude, thus allowing the simulation of scenes with many complex interacting objects.

Efficient Contact Modeling using Compliance Warping

Adaptive Particles for Incompressible Fluid Simulation

We propose a particle-based technique for simulating incompressible fluid that includes adaptive refinement of particle sampling. Each particle represents a mass of fluid in its local region. Particles are split into several particles for finer sampling in regions of complex flow. In regions of smooth flow, neighboring particles can be merged. Depth below the surface and Reynolds number are exploited as our criteria for determining whether splitting or merging should take place. For the fluid dynamics calculations, we use the hybrid FLIP method, which is computationally simple and efficient. Since the fluid is incompressible, each particle has a volume proportional to its mass. A kernel function, whose effective range is based on this volume, is used for transferring and updating the particle’s physical properties such as mass and velocity. Our adaptive particle-based simulation is demonstrated in several scenarios that show its effectiveness in capturing fine detail of the flow, where needed, while efficiently sampling regions where less detail is required.

Adaptive Particles for Incompressible Fluid Simulation

Vortex Methods for Incompressible Flow Simulation on the GPU

We present a remeshed vortex particle method for incompressible flow simulations on GPUs. The particles are convected in a Lagrangian frame and are periodically reinitialized on a regular grid. The grid is used in addition to solve for the velocity–vorticity Poisson equation and for the computation of the diffusion operators. In the present GPU implementation of particle methods, the remeshing and the solution of the Poisson equation rely on fast and efficient mesh-particle interpolations. We demonstrate that particle remeshing introduces minimal artificial dissipation, enables a faster computation of differential operators on particles over grid-free techniques and can be efficiently implemented on GPUs. The results demonstrate that, contrary to common practice in particle simulations, it is necessary to remesh the (vortex) particle locations in order to solve accurately the equations they discretize, without compromising the speed of the method. The present method leads to simulations of incompressible vortical flows on GPUs with unprecedented accuracy and efficiency.

Vortex Methods for Incompressible Flow Simulation on the GPU

Real-time Animation of Sand-Water Interaction

Recent advances in physically-based simulations have made it possible to generate realistic animations. However, in the case of solid-fluid coupling, wetting effects have rarely been noticed despite their visual importance especially in interactions between fluids and granular materials. This paper presents a simple particle-based method to model the physical mechanism of wetness propagating through granular materials; Fluid particles are absorbed in the spaces between the granular particles and these wetted granular particles then stick together due to liquid bridges that are caused by surface tension and which will subsequently disappear when over-wetting occurs. Our method can handle these phenomena by introducing a wetness value for each granular particle and by integrating those aspects of behavior that are dependent on wetness into the simulation framework. Using this method, a GPU-based simulator can achieve highly dynamic animations that include wetting effects in real time.

Real-time Animation of Sand-Water Interaction

Optimizing Cubature for Efficient Integration of Subspace Deformations

We propose an efficient scheme for evaluating nonlinear subspace forces (and Jacobians) associated with subspace deformations. The core problem we address is efficient integration of the subspace force density over the 3D spatial domain. Similar to Gaussian quadrature schemes that efficiently integrate functions that lie in particular polynomial subspaces, we propose cubature schemes (multi-dimensional quadrature) optimized for efficient integration of force densities associated with particular subspace deformations, particular materials, and particular geometric domains. We support generic subspace deformation kinematics, and nonlinear hyperelastic materials. For an r-dimensional deformation subspace with O(r) cubature points, our method is able to evaluate subspace forces at O(r^2) cost. We also describe composite cubature rules for runtime error estimation. Results are provided for various subspace deformation models, several hyperelastic materials (St.Venant-Kirchhoff, Mooney-Rivlin, Arruda-Boyce), and multimodal (graphics, haptics, sound) applications. We show dramatically better efficiency than traditional Monte Carlo integration.

Optimizing Cubature for Efficient Integration of Subspace Deformations

Magnets in Motion

We introduce magnetic interaction for rigid body simulation. Our approach is based on an equivalent dipole method and as such it is discrete from the ground up. Our approach is symmetric as we base both field and force computations on dipole interactions.

Enriching rigid body simulation with magnetism allows for many new and interesting possibilities in computer animation and special effects. Our method also allows the accurate computation of magnetic fields for arbitrarily shaped objects, which is especially interesting for pedagogy as it allows the user to visually discover properties of magnetism which would otherwise be difficult to grasp.

We demonstrate our method on a variety of problems and our results reflect intuitive as well as surprising effects. Our method is fast and can be coupled with any rigid body solver to simulate dozens of magnetic objects at interactive rates.

Magnets in Motion

Algoryx and Phun, CMLabs

There seem to be quite a few companies in the business of physics simulation these days.

Graham Fyffe pointed out this one to me: Algoryx focuses on 3D multi-physics simulations. They are also responsible for the Phun demo I posted a while ago, that has also been floating around YouTube.  

Another company that does rigid-body physics simulations is CMLabs.