3.7. O THER G AME P HYSICS A PPROACHES Overview of other game engine physics approaches.

Slides:



Advertisements
Similar presentations
Formal Computational Skills
Advertisements

COMP Robotics: An Introduction
Rigid Body Dynamics Jim Van Verth
1 C02,C03 – ,27,29 Advanced Robotics for Autonomous Manipulation Department of Mechanical EngineeringME 696 – Advanced Topics in Mechanical Engineering.
Rotational Motion Chapter Opener. Caption: You too can experience rapid rotation—if your stomach can take the high angular velocity and centripetal acceleration.
3.2. I NTRODUCTION TO R EAL - TIME P HYSICS Overview of core principles behind real-time physics systems.
© 2011 Autodesk Freely licensed for use by educational institutions. Reuse and changes require a note indicating that content has been modified from the.
Beams and Frames.
Manipulator Dynamics Amirkabir University of Technology Computer Engineering & Information Technology Department.
Physics Montwood High School R. Casao
Chris Hall Aerospace and Ocean Engineering
Some Ideas Behind Finite Element Analysis
Systems of Linear Equations
3.6. R ESTING C ONTACTS AND F RICTION Exploration of resting contacts and friction.
Chapter 10 Angular momentum Angular momentum of a particle 1. Definition Consider a particle of mass m and linear momentum at a position relative.
3.5. C ONTACT R ESOLUTION Resolving a set of contacts.
Dynamics of Articulated Robots Kris Hauser CS B659: Principles of Intelligent Robot Motion Spring 2013.
Robot Dynamics – Newton- Euler Recursive Approach ME 4135 Robotics & Controls R. Lindeke, Ph. D.
Last Lecture Review 1 Two horizontal forces act on a block that is sliding on ice. Assume that a third horizontal force F also acts on the block. What.
Spacecraft Attitude Determination Using GPS Signals C1C Andrea Johnson United States Air Force Academy.
Ch. 7: Dynamics.
Game Physics Chris Miles. The Goal To learn how to create game objects with realistic physics models To learn how to simulate aspects of reality in order.
Physics 106: Mechanics Lecture 07
1 Geometry A line in 3D space is represented by  S is a point on the line, and V is the direction along which the line runs  Any point P on the line.
UNC Chapel Hill S. Redon - M. C. Lin Rigid body dynamics II Solving the dynamics problems.
Ch. 4: Velocity Kinematics
Chapter 10 Rotational Motion
1/18/ L IAP 2007  Last Lecture  Pendulums and Kinetic Energy of rotation  Today  Energy and Momentum of rotation  Important Concepts  Equations.
Articulated Body Dynamics The Basics Comp 768 October 23, 2007 Will Moss.
Manipulator Dynamics Amirkabir University of Technology Computer Engineering & Information Technology Department.
EGR 280 Mechanics 1 – Introduction, forces, particle statics.
1/17/ L IAP 2006  Last Lecture  Everything you need to know about dynamics of rotation  Today  Pendulums and Kinetic Energy of rotation  Important.
© 2011 Autodesk Freely licensed for use by educational institutions. Reuse and changes require a note indicating that content has been modified from the.
Velocities and Static Force
States, operators and matrices Starting with the most basic form of the Schrödinger equation, and the wave function (  ): The state of a quantum mechanical.
Lecture VII Rigid Body Dynamics CS274: Computer Animation and Simulation.
Game Physics – Part IV Moving to 3D
ME451 Kinematics and Dynamics of Machine Systems
ME451 Kinematics and Dynamics of Machine Systems Numerical Solution of DAE IVP Newmark Method November 1, 2013 Radu Serban University of Wisconsin-Madison.
Robot Dynamics – Slide Set 10 ME 4135 R. R. Lindeke, Ph. D.
1 C03 – Advanced Robotics for Autonomous Manipulation Department of Mechanical EngineeringME 696 – Advanced Topics in Mechanical Engineering.
Forces and Newton’s Laws of Motion. 4.1 The Concepts of Force and Mass A force is a push or a pull. Arrows are used to represent forces. The length of.
Biomechanics Examines the internal and external forces acting on the human body and the effects produced by these forces Aids in technique analysis and.
© 2011 Autodesk Freely licensed for use by educational institutions. Reuse and changes require a note indicating that content has been modified from the.
Lecture Fall 2001 Physically Based Animation Ordinary Differential Equations Particle Dynamics Rigid-Body Dynamics Collisions.
PHARMACOECONOMIC EVALUATIONS & METHODS MARKOV MODELING IN DECISION ANALYSIS FROM THE PHARMACOECONOMICS ON THE INTERNET ®SERIES ©Paul C Langley 2004 Maimon.
11/11/20151 Trusses. 11/11/20152 Element Formulation by Virtual Work u Use virtual work to derive element stiffness matrix based on assumed displacements.
© 2011 Autodesk Freely licensed for use by educational institutions. Reuse and changes require a note indicating that content has been modified from the.
Advanced Computer Graphics Rigid Body Simulation Spring 2002 Professor Brogan.
Chapter 11 Angular Momentum. Angular momentum plays a key role in rotational dynamics. There is a principle of conservation of angular momentum.  In.
Spring Rigid Body Simulation. Spring Contents Unconstrained Collision Contact Resting Contact.
Just a quick reminder with another example
INTRODUCTION TO DYNAMICS ANALYSIS OF ROBOTS (Part 4)
CS274 Spring 01 Lecture 7 Copyright © Mark Meyer Lecture VII Rigid Body Dynamics CS274: Computer Animation and Simulation.
Physics Formulas. The Components of a Vector Can resolve vector into perpendicular components using a two-dimensional coordinate system:
Advanced Games Development Game Physics CO2301 Games Development 1 Week 19.
1/16/ L IAP 2007  Last Lecture  Everything you need to know about dynamics of rotation  Today  Pendulums and Kinetic Energy of rotation  Important.
Plane Dynamics of Rigid Bodies
Velocity Propagation Between Robot Links 3/4 Instructor: Jacob Rosen Advanced Robotic - MAE 263D - Department of Mechanical & Aerospace Engineering - UCLA.
Physically Based Simulations For Games
ECE 3301 General Electrical Engineering
Manipulator Dynamics 1 Instructor: Jacob Rosen
Introduction To Robotics
3.7. Other Game Physics Approaches
Manipulator Dynamics 2 Instructor: Jacob Rosen
Same format as first quiz. Total of 50 points
Advanced Games Development Game Physics
Solving simultaneous equations
Pivoting, Perturbation Analysis, Scaling and Equilibration
Presentation transcript:

3.7. O THER G AME P HYSICS A PPROACHES Overview of other game engine physics approaches

As an alternative to resolving contacts one at a time, a group of contacts can be solved simultaneously. Physics engines using this approach tend to employ force calculations rather than impulses, i.e. resting objects are kept apart by a constant force (and not a series of single-frame impulses). A simultaneous resolution calculation tries to find the forces and impulses to apply at each contact, taking the interaction of all contacts into account. The most common approach to doing this is by using a Jacobian and solving what is known as the “linear-complementary problem”.

The Jacobian is a mathematical construct (a matrix) that encodes how one contact affects another. It can be solved (usually) to provide a set of forces to be applied. It operates by firstly combining the forces and torques for all objects into a single (long) vector (requiring 6xn entries, where n is the number of rigid bodies – 3 force components, 3 torque components). Next, all accelerations (linear and angular) for all objects are also combined into another (long) vector. The entries in the Jacobian matrix relate these two vectors, i.e. each location in the matrix encodes the amount of acceleration caused by the application of a unit of force or torque.

Some of the entries in the matrix are very simple to calculated (using the equations of motion and rotation as used earlier). The more complex entries arise when encoding the interaction of objects at contact points, but the same approach holds true – i.e. the effect per unit of applied force is calculated and encoded. Components within the Jacobian will also be used to model frictional forces. The flexibility of the Jacobian to represent interactions between objects, as well as the basic motion of the object itself, allows it to be used to create a much wider range of joints. For example, the motion of one object along one axis can be fixed; motors can be implemented by adding elements to the Jacobian that generate forces, etc.

Resolving all the contacts, using a constructed Jacobian, J, requires that the following be resolved: where f is a vector of force and torque components for all rigid bodies and is the resulting accelerations. f comprises two components: Where f known is the set of forces and torques we know we are applying (forces due to gravity or due to other force generators) and f contacts is the set of forces that are generated in the contacts, which is what we’re trying to find out. Relying on the distributive properties of matrices (i.e. A×(B +C) = A×B+A×C.), this can be written as: In other words, the Jacobian is multiplied by the known force vector to get a known acceleration.

Calculating is accomplished before contact resolution (i.e. this value does not change during the resolve process). Stated as such, one approach (albeit computationally expensive and possibly without a solution) is to solve the equation by computing the inverse of the Jacobian. However, this does not take into account an additional constraint that: where r is a vector of limits on how big the forces can be (frictional forces will have a defined limit) The final calculation, finding f so that it fulfils both equations, is called the “linear complementary problem”.

A commonly used algorithm for solving the LCP is called the “pivot algorithm.” It works by making guesses for components in f and checking the results. The errors from one set of guesses can be used to modify components one at a time and converge at a solution. Under some assumptions that are commonly met in rigid body simulations, the guesses will always converge toward the solution. Complications can arise due to numerical instability and the approximation of fixed- length time steps. This can result in a situation where the pivot algorithm cannot be solved. A robust implementation must detect such situations and provide alternatives (although this adds to the overall complexity).

Overview of breakable and deformable bodies

Video not available in on-line slides

Directed reading concerning other physics approaches Directed reading

Directed reading

To do: Think if you want to explore the more complex physics approaches. Today we explored: Summary of other physics approaches