I have also compared the performance of the sparse system solver [SG06] with precondi- tioned conjugate gradient descent (PCG) to solve (4.26), on the deer model with 2 755 surface nodes. I used a diagonal preconditioner consisting of the diagonal part of M˜s.
PCG is 4 times slower for solving the collision-free update of the skin, even after reaching 100 iterations without fully converging.
As demonstrated in the experiments, my method for simulating soft articulated char- acters handles contact constraints interactively while producing rich deformations on the skin. Due to its layered representation, it cannot be directly compared with methods that model global deformations using a volumetric representation. From the family of FEM-based methods, the one by M¨uller et al. [MDM+02] is perhaps the closest relative
to mine, as it also uses implicit integration and linear elasticity evaluated in a floating reference frame. In comparison with M¨uller’s, my method is obviously restricted to skeletal global deformations, not arbitrary ones, and the elastic energy only accounts for skin-layer deformations, not deformations in the whole volume of the object. However, our method offers considerable benefits for fast collision handling. Due to the fast solver presented in Section 4.3, my method can efficiently compute global collision response
Figure 4.7: Contact Constraints. Left column: The fish touches the body of the snake, creating global response and skin deformations. Right column: Local skin deformations are turned off to show the importance of handling both global and surface response. Notice the highlighted interpenetrations, clearly visible through the fish’s mouth.
(i.e., response of the skeleton) using matrix condensation. Furthermore, it can handle both local skin and global skeletal response with approximate implicit integration sta- bly and robustly. M¨uller’s method (and others) cannot exploit the decomposition of the deformation, and the constraint-based simulation would require the use of the full implicit system, in order to robustly compute global response. Perhaps for this reason,
methods such as M¨uller’s are often combined with penalty-based collision response, not constraint-based, with the associated problem of object interpenetration as shown in Fig. 4.7.
4.5
Advantages and Summary
The method presented in this chapter has the following key advantages:
• A new formulation of elastic deformation in pose space, which is related to skin dis- placement corrections [KJP02, JT05] and FEM approaches in a floating frame of reference [TW88], augmented with a joint stiffness term to model pose-dependent deformations. With this formulation, the motion equations derived from La- grangian mechanics naturally produce the desiredinterplay between skin and skele- ton.
• Efficient and scalable computation of articulated-body dynamics with contact con- straints and skin deformations, with a cost ofO(m+k+n) in practice, where m is the number of contacts, k the number of bones, and n the number of surface nodes. My method is based on the decoupling of skin and skeleton computations in otherwise coupled implicit equations, through careful and robust approximation of Schur complements.
• The presented model for dynamic soft articulated characters builds upon tradi- tional mesh skinning paradigms and enableseasy integration with existing skinning pipelines.
I have presented a novel method for simulating deformable characters with an ar- ticulated skeleton that allows fast handling of complex contact scenarios and plausible, coupled global and local deformations. This method models characters as skinned artic- ulated bodies with a layered representation, and measures elastic deformations in pose
space. Central to the efficient simulation of contact-induced deformations is an implicit constraint-based collision handling approach that exploits the layered representation to enable efficient, approximate yet robust matrix condensation.
I have implemented my algorithm and tested its performance on several complex benchmarks. I was able to achieve simulation frame rates of 4 to 8 fps with multiple colliding articulated characters with a deformable skin layer, each consisting of up to 3,500 vertices.
4.6
Limitations and Future Work
The deformation model described in this chapter expresses strain in pose space and does not capture pose-dependent strain near joints, as explained in more detail in Sec- tion 4.2.1. I have approximated pose-dependent strain energy with a user-tunable joint stiffness, but my model could be further extended with data-driven approaches [LCF00] to add e.g., bulging effects due to elbow flexion. In fact, such effects become possible with the method presented in Chapter 5, in which I present a method that complements pose-dependent strain-energy with artist-provided example shapes. Another possible extension for handling more complex volumetric deformations would be to adopt a de- formation model based on a control lattice [CGC+02a], instead of a purely skeletal approach. This would require an extension of the contact handling algorithm so that collision response can be efficiently applied to both the control lattice and the skeleton. Similarly, it is worth exploring the addition of our efficient contact-induced deformations to non-skeletal skinning approaches [JT05].
Additionally, it would be interesting to explore ways to handle inequality constraints, as this would allow modeling more accurate contact forces and joint limits.
Finally, in the interest of performance it would be useful to investigate a fully par- allelized solution to enable implementations that are accelerated for parallel hardware
architectures. This would open the door to more complex scenes with many deforming characters at interactive rates.
Chapter 5
Deformation Control with Dynamic Morph
Targets
In this chapter, I present a method to control the behavior of elastic, deformable material in a dynamic simulation. I introduce dynamic morph targets, the equivalent in dynamic simulation to the geometric morph targets in (quasi-)static modeling, as a step towards bridging the gap between geometric example-based methods and physically based ap- proaches. This chapter is a logical continuation of the development of a controllable elastic deformation model that was started in the previous chapters. The elastic defor- mation model presented in Chapters 3 and 4 for objects with a (possibly articulated) core and a layer of soft skin is leveraged in this chapter. Dynamic morph targets merely influence the coefficients of the dynamic equations and hence the discretization, integra- tion and solution techniques that were presented in the previous chapters for simulation of combined global and local deformations can be employed in this chapter as well.
Dynamic morph targets define the pose-dependent physical state of soft objects, including surface deformation and elastic and inertial properties. My method easily integrates with current modeling and animation pipelines: at different poses, an artist simply provides a set of dynamic morph targets.
The deformable models presented in this chapter are computationally efficient at run- time through modal reduction and pose-space polynomial interpolation. These models
can therefore be plugged into existing dynamic simulation engines, either forming inter- active, deformable content in real-time games or providing secondary dynamic effects for kinematically-driven characters in feature animation films.