Create physically realistic 3D Graphics environments with this introduction to the ideas and techniques behind the process. Author David H. Eberly includes simulations to introduce the key problems involved and then gradually reveals the mathematical and physical concepts needed to solve them. He then describes all the algorithmic foundations and uses code examples and working source code to show how they are implemented, culminating in a large collection of physical simulations. The book tackles the complex, challenging issues that other books avoid, including Lagrangian dynamics, rigid body dynamics, impulse methods, resting contact, linear complementarity problems, deformable bodies, mass-spring systems, friction, numerical solution of differential equations, numerical stability and its relationship to physical stability, and Verlet integration methods. This book even describes when real physics isn't necessary - and hacked physics will do.

    Introduction
    A Brief History of the World
    A Summary of the Topics
    Examples and Exercises
    Basic Concepts from Physics
    Rigid Body Classification
    Rigid Body Kinematics
    Newton’s Laws
    Forces
    Momenta
    Energy
    Rigid Body Motion
    Newtonian Dynamics
    Lagrangian Dynamics
    Euler’s Equations of Motion
    Deformable Bodies
    Elasticity, Stress, and Strain
    Mass–Spring Systems
    Control Point Deformation
    Free-Form Deformation
    Implicit Surface Deformation
    Fluids and Gases
    Vector Calculus
    Strain and Stress
    Conservation Laws
    A Simplified Model for Fluid Flow
    Implementing the Simplified 2D Model
    Implementing the Simplified 3D Model
    Variations of the Simplified Model
    Physics Engines
    The Physics Tick
    Collision Culling
    Test-Intersection Queries
    Collision Detection with Convex Polyhedra
    Unconstrained Motion
    Acceleration-Based Constrained Motion
    Velocity-Based Constrained Motion
    Variations
    Linear Algebra
    A Review of Number Systems
    Systems of Linear Equations
    Matrices
    Vector Spaces
    Advanced Topics
    Affine Algebra
    Introduction
    Coordinate Systems
    Subspaces
    Transformations
    Barycentric Coordinates
    Calculus
    Univariate Calculus
    Multivariate Calculus
    Applications
    Quaternions
    Rotation Matrices
    The Classical Approach
    A Linear Algebraic Approach
    Interpolation of Quaternions
    Derivatives of Time-Varying Quaternions
    Differential Equations
    First-Order Equations
    Existence, Uniqueness, and Continuous Dependence
    Second-Order Equations
    General-Order Differential Equations
    Systems of Linear Differential Equations
    Equilibria and Stability
    Ordinary Difference Equations
    Definitions
    Linear Equations
    Constant Coefficient Equations
    Systems of Equations
    Numerical Methods
    Euler’s Method
    Higher-Order Taylor Methods
    Methods via an Integral Formulation
    Runge–Kutta Methods
    Multistep Methods
    Predictor–Corrector Methods
    Extrapolation Methods
    Verlet Integration
    Numerical Stability and Its Relationship to Physical Stability
    Stiff Equations
    Linear Complementarity and Mathematical Programming
    Linear Programming
    The Linear Complementarity Problem
    Mathematical Programming
    Applications
    Contact Forces

    Biography

    Dave Eberly is the president of Geometric Tools, Inc. (www.geometrictools.com), a company that specializes in software development for computer graphics, image analysis, and numerical methods. Previously, he was the director of engineering at Numerical Design Ltd. (NDL), the company responsible for the real-time 3D game engine, NetImmerse. He also worked for NDL on Gamebryo, which was the next-generation engine after NetImmerse. His background includes a BA degree in mathematics from Bloomsburg University, MS and PhD degrees in mathematics from the University of Colorado at Boulder, and MS and PhD degrees in computer science from the University of North Carolina at ChapelHill. He is the author of 3D Game Engine Design, 2nd Edition (2006), 3D Game Engine Architecture (2005), Game Physics (2004), and coauthor with Philip Schneider of Geometric Tools for Computer Graphics (2003), all published by Morgan Kaufmann. As a mathematician, Dave did research in the mathematics of combustion, signal and image processing, and length-biased distributions in statistics. He was an associate professor at the University of Texas at San Antonio with an adjunct appointment in radiology at the U.T. Health Science Center at San Antonio. In 1991, he gave up his tenured position to re-train in computer science at the University of North Carolina. After graduating in 1994, he remained for one year as a research associate professor in computer science with a joint appointment in the Department of Neurosurgery, working in medical image analysis. His next stop was the SAS Institute, working for a year on SAS/Insight, a statistical graphics package. Finally, deciding that computer graphics and geometry were his real calling, Dave went to work for NDL (which is now Emergent Game Technologies), then to Magic Software, Inc., which later became Geometric Tools, Inc. Dave's participation in the newsgroup comp.graphics.algorit

    "I keep at most a dozen reference texts within easy reach of my workstation computer. This book will replace two of them."--Ian Ashdown, President, byHeart Consultants Limited