1 / 33

Advanced Computer Graphics Rigid Body Simulation

This text provides an in-depth exploration of the equations of motion, rigid body simulation, and spring physics in the field of advanced computer graphics. It also covers topics such as cloth and water simulation, parallel particle simulation, and physical simulation references.

dwaynel
Download Presentation

Advanced Computer Graphics Rigid Body Simulation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Advanced Computer GraphicsRigid Body Simulation Spring 2002 Professor Brogan

  2. Upcoming Assignments • Who wants a midterm instead of an assignment? • Final will be take home • Cloth/water/parallel particle sim presentations • Volunteers? • Papers selected by Thursday

  3. Physical Simulation • References • Text book (4.3 and Appendix B) • Physics for Game Developers (Bourg) • Chris Hecker Game Developer articles • http://www.d6.com/users/checker/dynamics.htm

  4. Equations of Motion • The physics-based equations that define how objects move • Gravity • Turbulence • Contact forces with objects • Friction • Joint constraints

  5. Equations of Motion Equations ofMotion Current State Position and velocity Forces Integrate Integrate Velocities Accelerations Integrate

  6. Equations of Motion • Linear motions: • Example: • Constant acceleration of 5 m/s2

  7. Linear Momentum • Mass times velocity = linear momentum, p • Newton’s Second Law Ceasing to identify vectors…

  8. Rigid Bodies • Imagine a rigid body as a set of point masses • Total momentum, pT, is sum of momentums of all points: • Center of Mass (CM) is asingle point. Vector to CMis linear combination ofvectors to all points in rigidbody weighted by their masses,divided by total mass of body

  9. Total Momentum • Rewrite total momentum in terms of CM • Total linear momentum equals total mass times the velocity of the center of mass (For continuous rigid bodies, all summations turn into integrals over the body, but CM still exists) • We can treat all bodies as single point mass and velocity

  10. Total Force • Total force is derivative of the total momemtum • Again, CM simplifies total force equation of a rigid body • We can represent all forces acting on a body as if their vector sum were acting on a point at the center of mass with the mass of the entire body

  11. Intermediate Results • Divide a force by M to find acceleration of the center of mass • Integrate acceleration over time to get the velocity and position of body • Note we’ve ignored where the forces are applied to the body • In linear momentum, we don’t keep track of the angular terms and all forces are applied to the CM.

  12. Ordinary Differential Equations • A DifEq is an equation with • Derivatives of the dependent variable • Dependent variable • Independent variable • Ex: • v’s derivative is a function of its current value • Ordinary refers to ordinary derivatives • As opposed to partial derivatives

  13. Integrating ODEs • Analytically solving ODEs is complicated • Numerically integrating ODEs is much easier (in general) • Euler’s Method • Runge-Kutta

  14. Euler’s Method • Based on calculus definition of first derivative = slope

  15. Euler’s Method • Use derivative at time n to integrate h units forward

  16. Euler Errors • Depending on ‘time step’ h, errors will accumulate SIGGRAPH Course Notes

  17. Accumulating Errors SIGGRAPH Course Notes

  18. Recap

  19. Angular Effects • Let’s remain in 2-D plane for now • In addition to kinematic variables • x, y positions • Add another kinematic variable • W angle • CCW rotation of objectaxes relative to world axes

  20. Angular Velocity • w is the angular velocity • a is the angular acceleration

  21. Computing Velocities • How do we combine linear and angular quantities? • Consider velocity of a point, B, of a rigid body rotating about its CM • r_perp is perpendicular to r vector from O to B • Velocity is w-scaled perpendicular vector from origin to point on body

  22. More Details • Point B travels W radians • Point B travels C units • Radius of circle is r • C= Wr • By definition of radians,where circumference = 2pr • B’s speed (magnitude of velocity vector) • Differentiate C= Wr w.r.t. time

  23. More Details • The direction of velocity is tangent to circle == perpendicular to radius • Therefore, linearvelocity is angularvelocity multiplied by tangent vector

  24. Chasles’ Theorem • Any movement is decomposed into: • Movement of a single point on body • Rotation of body about that point • Linear and Angular Components

  25. Angular Momentum • The angular momentum of point B about point A (we always measure angular terms about some point) • It’s a measure of how much of point B’s linear momentum is rotating around A

  26. Angular Momentum • Check: If linear momentum, pB, is perpendicular to r_perp, then dot product of two will cause angular momentum will be zero

  27. Torque • Derivative of Angular Momentum • Remember force was derivative of linear momentum • This measures how much of a force applied at point B is used to rotate about point A, the torque

  28. Total Angular Momentum • Total angular momentum about point A is denoted LAT • But computation can be expensive to sample all points • Sampling of a surface would require surface integration

  29. Moment of Inertia • Remember • An alternate way of representing the velocity of a point in terms of angular velocity • If A is like the origini is like B, then substitute

  30. Moment of Inertia, IA • The sum of squared distances from point A to each other point in the body, and each squared distance is scaled by the mass of each point • This term characterizes how hard it is to rotate something • Ipencil_center will be much less than Ipencil_tip

  31. Total Torque • Differentiate totalangular momentumto get total torque • This relates total torque and the body’s angular acceleration through the scalar moment of inertia

  32. Planar Dynamics • Calculate COM and MOI of rigid body • Set initial position and linear/angular velocities • Figure out all forces and their points of application • Sum all forces and divide by mass to find COM’s linear acceleration • For each force, compute perp-dot-product from COM to point of force application and add value into total torque of COM • Divide total torque by the MOI at the COM to find angular acceleration • Numerically integrate linear/angular accelerations to update the position/orientation and linear/angular velocities • Draw body in new position and repeat

  33. Upcoming Topics • Collisions • 3-dimensional rigid bodies (inertia tensors) • Forces (centripetal, centrifugal, viscosity, friction, contact) • Constrained dynamics (linked bodies)

More Related