This Article 
 Bibliographic References 
 Add to: 
Dynamic Simulation of Articulated Rigid Bodies with Contact and Collision
May/June 2006 (vol. 12 no. 3)
pp. 365-374

Abstract—We propose a novel approach for dynamically simulating articulated rigid bodies undergoing frequent and unpredictable contact and collision. In order to leverage existing algorithms for nonconvex bodies, multiple collisions, large contact groups, stacking, etc., we use maximal rather than generalized coordinates and take an impulse-based approach that allows us to treat articulation, contact, and collision in a unified manner. Traditional constraint handling methods are subject to drift, and we propose a novel prestabilization method that does not require tunable potentially stiff parameters as does Baumgarte stabilization. This differs from poststabilization in that we compute allowable trajectories before moving the rigid bodies to their new positions, instead of correcting them after the fact when it can be difficult to incorporate the effects of contact and collision. A poststabilization technique is used for momentum and angular momentum. Our approach works with any black box method for specifying valid joint constraints and no special considerations are required for arbitrary closed loops or branching. Moreover, our implementation is linear both in the number of bodies and in the number of auxiliary contact and collision constraints, unlike many other methods that are linear in the number of bodies, but not in the number of auxiliary constraints.

[1] D. Baraff, “Linear-Time Dynamics Using Lagrange Multipliers,” Proc. ACM SIGGRAPH, pp. 137-146, 1996.
[2] D. Baraff, “Fast Contact Force Computation for Nonpenetrating Rigid Bodies,” Proc. SIGGRAPH '94, pp. 23-34, 1994.
[3] D. Baraff, “Analytical Methods for Dynamic Simulation of Non-Penetrating Rigid Bodies,” Computer Graphics (Proc. SIGGRAPH '89), vol. 23, no. 3, pp. 223-232, 1989.
[4] D. Baraff, “Curved Surfaces and Coherence for Non-Penetrating Rigid Body Simulation,” Computer Graphics (Proc. SIGGRAPH '90), vol. 24, no. 4, pp. 19-28, 1990.
[5] D. Baraff, “Coping with Friction for Non-Penetrating Rigid Body Simulation,” Computer Graphics (Proc. SIGGRAPH '91), vol. 25, no. 4, pp. 31-40, 1991.
[6] D. Baraff, “Issues in Computing Contact Forces for Non-Penetrating Rigid Bodies,” Algorithmica, no. 10, pp. 292-352, 1993.
[7] F. Faure, G. Debunne, M.-P. Cani, and F. Multon, “Dynamic Analysis of Human Walking,” Proc. Eighth Eurographics Workshop Computer Animation and Simulation, Sept. 1997.
[8] F. Faure, “Fast Iterative Refinement of Articulated Solid Dynamics,” IEEE Trans. Visualization and Computer Graphics, vol. 5, no. 3, pp. 268-276, July-Sept. 1999.
[9] D. Ruspini and O. Khatib, “Collision/Contact Models for the Dynamic Simulation of Complex Environments,” Proc. IEEE/RSJ Int'l Conf. Intelligent Robots and Systems: IROS '97, Sept. 1997.
[10] D. Ruspini and O. Khatib, “A Framework for Multi-Contact Multi-Body Dynamic Simulation and Haptic Display,” Proc. 2000 IEEE/RSJ Int'l Conf. Intelligent Robots and Systems, 2000.
[11] E. Guendelman, R. Bridson, and R. Fedkiw, “Nonconvex Rigid Bodies with Stacking,” ACM Trans. Graphics (SIGGRAPH Proc.), vol. 22, no. 3, pp. 871-878, 2003.
[12] B. Mirtich, “Hybrid Simulation: Combining Constraints and Impulses,” Proc. First Workshop Simulation and Interaction in Virtual Environments, July 1995.
[13] B. Mirtich and J. Canny, “Impulse-Based Dynamic Simulation,” Algorithmic Foundations of Robotics, K. Goldberg, D. Halperin, J.-C. Latombe, and R. Wilson, eds., Boston, Mass.: A.K. Peters, pp. 407-418, 1995.
[14] B. Mirtich and J. Canny, “Impulse-Based Simulation of Rigid Bodies,” Proc. 1995 Symp. Int'l 3D Graphics, pp. 181-188, 217, 1995.
[15] A. Witkin, K. Fleischer, and A. Barr, “Energy Constraints on Parameterized Models,” Computer Graphics (SIGGRAPH Proc.), pp. 225-232, 1987.
[16] A.H. Barr, B.V. Herzen, R. Barzel, and J. Snyder, “Computational Techniques for the Self Assembly of Large Space Structures,” Proc. Eighth Princeton/SSI Conf. Space Manufacturing, pp. 275-282, 1987.
[17] R. Barzel and A.H. Barr, “A Modeling System Based on Dynamics Constraints,” Computer Graphics (SIGGRAPH Proc.), pp. 179-188, 1988.
[18] J.C. Platt and A.H. Barr, “Constraint Methods for Flexible Models,” Computer Graphics (SIGGRAPH Proc.), pp. 279-288, 1988.
[19] A. Witkin, M. Gleicher, and W. Welch, “Interactive Dynamics,” Computer Graphics, vol. 24, no. 2, pp. 11-21, 1990.
[20] A. Witkin and W. Welch, “Fast Animation and Control of Nonrigid Structures,” Computer Graphics (Proc. SIGGRAPH '90), pp. 243-252, 1990.
[21] J. Baumgarte, “Stabilization of Constraints and Integrals of Motion in Dynamical Systems,” Computer Methods in Applied Mechanics and Eng., vol. 1, pp. 1-16, 1972.
[22] U.M. Ascher, H. Chin, and S. Reich, “Stabilization of DAES and Invariant Manifolds,” Numerische Mathematik, vol. 67, no. 2, pp. 131-194, 1994.
[23] U. Ascher, H. Chin, L. Petzold, and S. Reich, “Stabilization of Constrained Mechanical Systems with DAES and Invariant Manifolds,” J. Mechanical Structures and Machines, vol. 23, pp. 135-158, 1995.
[24] U. Ascher, “Stabilization of Invariants of Discretized Differential Systems,” Numerical Algorithms, vol. 14, pp. 1-23, 1997.
[25] J.-D. Gascuel and M.-P. Gascuel, “Displacement Constraints for Interactive Modeling and Animation of Articulated Structures,” The Visual Computer, vol. 10, no. 4, pp. 191-204, 1994.
[26] J. Lee, N. Baek, D. Kim, and J. Hahn, “A Procedural Approach to Solving Constraints of Articulated Bodies,” Proc. Eurographics 2000, Short Presentations Programme, Aug. 2000.
[27] F. Faure, “Interactive Solid Animation Using Linearized Displacement Constraints,” Proc. Conf. Computer Animation and Simulation, pp. 61-72, 1999.
[28] M. Cline and D. Pai, “Post-Stabilization for Rigid Body Simulation with Contact and Constraints,” Proc. 2003 IEEE Int'l Conf. Robotics and Automation (ICRA 2003), pp. 3744-3751, Sept. 2003.
[29] W. Shao and V. Ng-Thow-Hing, “A General Joint Component Framework for Realistic Articulation in Human Characters,” Proc. ACM Symp. Interactive 3D Graphics, pp. 11-18, 2003.
[30] W. Maurel and D. Thalmann, “Human Upper Limb Modeling Including Scapulo-Thoracic Constraint and Joint Sinus Cones,” Computers & Graphics, vol. 24, no. 2, pp. 203-218, 2000.
[31] J. Wilhelms and A. Van Gelder, “Fast and Easy Reach-Cone Joint Limits,” J. Graphics Tools, vol. 6, no. 2, pp. 27-41, 2001.
[32] R. Featherstone, Robot Dynamics Algorithms. Kluwer Academic Publishers, 1987.
[33] M. Girard and A.A. Maciejewski, “Computational Modeling for the Computer Animation of Legged Figures,” Proc. SIGGRAPH, pp. 263-270, 1985.
[34] W.W. Armstrong and M. Green, “The Dynamics of Articulated Rigid Bodies for Purposes of Animation,” Proc. Graphics Interface Conf. '85, pp. 407-415, May 1985.
[35] W. Armstrong, M. Green, and R. Lake, “Near-Real-Time Control of Human Figure Models,” IEEE Computer Graphics and Applications, vol. 7, no. 6, pp. 51-61, 1987.
[36] J. Wilhelms and B.A. Barsky, “Using Dynamic Analysis to Animate Articulated Bodies Such as Humans and Robots,” Proc. Conf. Graphics Interface '85, pp. 97-104, May 1985.
[37] J. Wilhelms, “Using Dynamic Analysis for Realistic Animation of Articulated Bodies,” IEEE Computer Graphics and Applications, vol. 7, no. 6, pp. 12-27, 1987.
[38] P. Isaacs and M. Cohen, “Controlling Dynamic Simulation with Kinematic Constraints, Behavior Functions and Inverse Dynamics,” Proc. SIGGRAPH, pp. 215-224, 1987.
[39] P. Isaacs and M. Cohen, “Mixed Methods for Complex Kinematic Constraints in Dynamic Figure Animation,” The Visual Computer, vol. 4, no. 6, pp. 296-305, 1988.
[40] J.K. Hahn, “Realistic Animation of Rigid Bodies,” Computer Graphics (Proc. SIGGRAPH '88), vol. 22, no. 4, pp. 299-308, 1988.
[41] M. Moore and J. Wilhelms, “Collision Detection and Response for Computer Animation,” Computer Graphics (Proc. SIGGRAPH '88), vol. 22, no. 4, pp. 289-298, 1988.
[42] J. Wilhelms, M. Moore, and R. Skinner, “Dynamic Animation: Interaction and Control,” The Visual Computer, vol. 4, pp. 283-295, 1988.
[43] A. Witkin and M. Kass, “Spacetime Constraints,” Computer Graphics (Proc. SIGGRAPH '88), vol. 22, pp. 159-168, 1988.
[44] Z. Popović and A. Witkin, “Physically Based Motion Transformation,” Computer Graphics (Proc. SIGGRAPH '99), pp. 11-20, 1999.
[45] M. McKenna and D. Zeltzer, “Dynamic Simulation of Autonomous Legged Locomotion,” Computer Graphics (Proc. SIGGRAPH '90), pp. 29-38, 1990.
[46] P. Schröder and D. Zeltzer, “The Virtual Erector Set: Dynamic Simulation with Linear Recursive Constraint Propagation,” Computer Graphics (Proc. SIGGRAPH '90), pp. 23-31, 1990.
[47] M.C. Surles, “An Algorithm with Linear Complexity for Interactive, Physically-Based Modeling of Large Proteins,” Proc. SIGGRAPH '92, pp. 221-230, 1992.
[48] E. Kokkevis, D. Metaxas, and N. Badler, “User-Controlled Physics-Based Animation for Articulated Figures,” Proc. Conf. Computer Animation '96, 1996.
[49] F. Faure, “An Energy-Based Method for Contact Force Computation,” Computer Graphics Forum (Proc. EUROGRAPHICS '96), vol. 15, no. 3, pp. 357-366, Aug. 1996.
[50] J. Critchley and K. Anderson, “A Generalized Recursive Coordinate Reduction Method for Multibody Dynamic Systems,” J. Multiscale Computational Eng., vol. 1, no. 2, pp. 181-200, 2003.
[51] K. Anderson and J. Critchley, “Improved Order-n Performance Algorithm for the Simulation of Constrained Multi-Rigid-Body Systems,” Multibody Systems Dynamics, vol. 9, pp. 185-212, 2003.
[52] J. Lenoir and S. Fonteneau, “Mixing Deformable and Rigid-Body Mechanics Simulation,” Computer Graphics Int'l, pp. 327-334, June 2004.
[53] G. Baciu and S.K. Wong, “The Impulse Graph: A New Dynamic Structure for Global Collisions,” CG Forum, vol. 19, no. 3, pp. 229-238, 2000.
[54] S. Redon, Y. Kim, M. Lin, and D. Manocha, “Fast Continuous Collision Detection for Articulated Models,” Proc. ACM Symp. Solid Modeling and Applications, 2004.
[55] R. Bridson, S. Marino, and R. Fedkiw, “Simulation of Clothing with Folds and Wrinkles,” Proc. 2003 ACM SIGGRAPH/Eurographics Symp. Computer Animation, pp. 28-36, 2003.
[56] D. Baraff, A. Witkin, and M. Kass, “Untangling Cloth,” ACM Trans. Graphics (SIGGRAPH Proc.), vol. 22, pp. 862-870, 2003.

Index Terms:
Computer graphics, physically-based modeling, animation, kinematics and dynamics.
Rachel Weinstein, Joseph Teran, Ron Fedkiw, "Dynamic Simulation of Articulated Rigid Bodies with Contact and Collision," IEEE Transactions on Visualization and Computer Graphics, vol. 12, no. 3, pp. 365-374, May-June 2006, doi:10.1109/TVCG.2006.48
Usage of this product signifies your acceptance of the Terms of Use.