Game Physics. Game and Media Technology Master Program - Utrecht University. Dr. Nicolas Pronost

Similar documents
Soft Bodies. Good approximation for hard ones. approximation breaks when objects break, or deform. Generalization: soft (deformable) bodies

Math background. Physics. Simulation. Related phenomena. Frontiers in graphics. Rigid fluids

Fluid Animation. Christopher Batty November 17, 2011

An Overview of Fluid Animation. Christopher Batty March 11, 2014

Lecture 8: Tissue Mechanics

NDT&E Methods: UT. VJ Technologies CAVITY INSPECTION. Nondestructive Testing & Evaluation TPU Lecture Course 2015/16.

Modeling, Simulating and Rendering Fluids. Thanks to Ron Fediw et al, Jos Stam, Henrik Jensen, Ryan

Inverse Design (and a lightweight introduction to the Finite Element Method) Stelian Coros

7 The Navier-Stokes Equations

Fundamentals of Fluid Dynamics: Elementary Viscous Flow

Continuum Mechanics and the Finite Element Method

( ) Notes. Fluid mechanics. Inviscid Euler model. Lagrangian viewpoint. " = " x,t,#, #

Conservation of mass. Continuum Mechanics. Conservation of Momentum. Cauchy s Fundamental Postulate. # f body

Fluid Dynamics Exercises and questions for the course

Finite Element Method in Geotechnical Engineering

Fundamentals of Linear Elasticity

9 MECHANICAL PROPERTIES OF SOLIDS

DEFORMATION AND FRACTURE ANALYSIS OF ELASTIC SOLIDS BASED ON A PARTICLE METHOD

Macroscopic theory Rock as 'elastic continuum'

Flow and Transport. c(s, t)s ds,

PDE Solvers for Fluid Flow

GAME PHYSICS (INFOMGP) FINAL EXAM

Chapter 9: Differential Analysis

A unifying model for fluid flow and elastic solid deformation: a novel approach for fluid-structure interaction and wave propagation

Additive Manufacturing Module 8

3D Elasticity Theory

Chapter 9: Differential Analysis of Fluid Flow

Chapter 1. Continuum mechanics review. 1.1 Definitions and nomenclature

Continuum mechanics V. Constitutive equations. 1. Constitutive equation: definition and basic axioms

Physics of Continuous media

PHYSICS. Course Structure. Unit Topics Marks. Physical World and Measurement. 1 Physical World. 2 Units and Measurements.

Navier-Stokes Equation: Principle of Conservation of Momentum

Chapter 12. Static Equilibrium and Elasticity

Chapter 9 Solids and Fluids. Elasticity Archimedes Principle Bernoulli s Equation

- Marine Hydrodynamics. Lecture 4. Knowns Equations # Unknowns # (conservation of mass) (conservation of momentum)

Measurement of deformation. Measurement of elastic force. Constitutive law. Finite element method

Physics. Assignment-1(UNITS AND MEASUREMENT)

Elements of Rock Mechanics

CHAPTER 7 SEVERAL FORMS OF THE EQUATIONS OF MOTION

Numerical methods for the Navier- Stokes equations

Summary PHY101 ( 2 ) T / Hanadi Al Harbi

INDEX 363. Cartesian coordinates 19,20,42, 67, 83 Cartesian tensors 84, 87, 226

Game Physics. Game and Media Technology Master Program - Utrecht University. Dr. Nicolas Pronost

Computational Astrophysics

Getting started: CFD notation

Fluid Mechanics Abdusselam Altunkaynak

Conservation of Mass. Computational Fluid Dynamics. The Equations Governing Fluid Motion

Introduction to Heat and Mass Transfer. Week 9

DIVIDED SYLLABUS ( ) - CLASS XI PHYSICS (CODE 042) COURSE STRUCTURE APRIL

2. FLUID-FLOW EQUATIONS SPRING 2019

V (r,t) = i ˆ u( x, y,z,t) + ˆ j v( x, y,z,t) + k ˆ w( x, y, z,t)

fluid mechanics as a prominent discipline of application for numerical

Mechanics of Earthquakes and Faulting

OPAC102. The Acoustic Wave Equation

Game Physics. Game and Media Technology Master Program - Utrecht University. Dr. Nicolas Pronost

MA3D1 Fluid Dynamics Support Class 5 - Shear Flows and Blunt Bodies

The Navier-Stokes Equations

States of Matter. Chapter 9 Solids and Fluids. Solids: Stress and Strain. Solids: Stress and Strain. Stress = Force Area. Strain =!

States of Matter. Chapter 9 Solids and Fluids. Solids: Stress and Strain. Solids: Stress and Strain. Stress = Force Area. Strain =!L L. Example 9.

Stress, Strain, and Viscosity. San Andreas Fault Palmdale

20. Rheology & Linear Elasticity

Introduction to Marine Hydrodynamics

Elements of Continuum Elasticity. David M. Parks Mechanics and Materials II February 25, 2004

Simulation in Computer Graphics Elastic Solids. Matthias Teschner

2. Conservation of Mass

1. Introduction, fluid properties (1.1, 2.8, 4.1, and handouts)

Quick Recapitulation of Fluid Mechanics

Chapter 10 Lecture Outline. Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Rock Rheology GEOL 5700 Physics and Chemistry of the Solid Earth

PEAT SEISMOLOGY Lecture 2: Continuum mechanics

Simulating Interfacial Tension of a Falling. Drop in a Moving Mesh Framework

Chapter 13 ELASTIC PROPERTIES OF MATERIALS

NORMAL STRESS. The simplest form of stress is normal stress/direct stress, which is the stress perpendicular to the surface on which it acts.

ENG1001 Engineering Design 1

FLEXIBILITY METHOD FOR INDETERMINATE FRAMES

D.A.V. PUBLIC SCHOOL, UPPAL S SOUTHEND, SECTOR 49, GURUGRAM CLASS XI (PHYSICS) Academic plan for

Static Equilibrium; Elasticity & Fracture

Turbulent Boundary Layers & Turbulence Models. Lecture 09

2007 Problem Topic Comment 1 Kinematics Position-time equation Kinematics 7 2 Kinematics Velocity-time graph Dynamics 6 3 Kinematics Average velocity

Chapter 1 Fluid Characteristics

Pressure corrected SPH for fluid animation

1. The Properties of Fluids

7.2.1 Seismic waves. Waves in a mass- spring system

CHAPTER 1 Fluids and their Properties

Simulation of Particulate Solids Processing Using Discrete Element Method Oleh Baran

Objectives: After completion of this module, you should be able to:

Introduction to Fluid Mechanics

Physics-Based Animation

Surface force on a volume element.

cos(θ)sin(θ) Alternative Exercise Correct Correct θ = 0 skiladæmi 10 Part A Part B Part C Due: 11:59pm on Wednesday, November 11, 2015

Potential Energy. Serway 7.6, 7.7;

Detailed Outline, M E 320 Fluid Flow, Spring Semester 2015

Course: US01CPHY01 UNIT 1 ELASTICITY I Introduction:

Chapter Two: Mechanical Properties of materials

What make cloth hard to simulate?

SEMM Mechanics PhD Preliminary Exam Spring Consider a two-dimensional rigid motion, whose displacement field is given by

Strength of Material. Shear Strain. Dr. Attaullah Shah

Performance Evaluation of Various Smoothed Finite Element Methods with Tetrahedral Elements in Large Deformation Dynamic Analysis

Particle-based Fluids

EMA 3702 Mechanics & Materials Science (Mechanics of Materials) Chapter 2 Stress & Strain - Axial Loading

Transcription:

Game and Media Technology Master Program - Utrecht University Dr. Nicolas Pronost

Soft body physics

Soft bodies In reality, objects are not purely rigid for some it is a good approximation but if you hit them with enough force, they will deform or break down In a game, you often want to see soft bodies (i.e. deformable objects) car body, anything you punch or shoot at, etc. piece of cloth, flag, paper sheet, etc. snow, mud, lava, liquid, etc. 3

Elasticity Elasticity is the primary concept in soft body physics Property by which the body returns to its original shape after the forces causing the deformation are removed A plastic rod can easily be bended, and returned to its original form A steel rod is difficult to bend, but can also return to its original form 4

Stress The stress within an object is the magnitude of an applied force divided by the area of its application large value when the force is large or when the surface is small It is a pressure measure σ and has the unit Pascal Pa = N/m 2 Example the stress on the plane is σ = mg/ πr 2 W m r 5

The strain on an object ε is the fractional deformation caused by a stress dimensionless (change in dimension relative to original dimension) measures how much a deformation differs from a rigid body transformation Example negative if compression, zero if rigid body transformation, positive if stretch the strain on the rod is ε = L L Strain t t + t L F L + L 6

Body material Stress and strain do not contain information about the specific material (i.e. deformation behavior) to which a force is applied The amount of stress to produce a strain does Therefore we can model it by the ratio of stress to strain usually in a linear direction, along a planar region or throughout a volume region Young s modulus, Shear modulus, Bulk modulus they describe the different ways the material changes shape due to stress 7

Young s modulus The Young s modulus is defined as the ratio of linear stress to linear strain Y = linear stress linear strain = F/A L/L Example A F L + L 8

Shear modulus The Shear modulus is defined as the ratio of planar stress to planar strain S = planar stress planar strain = F/A L/L Example A F L L 9

Bulk modulus The Bulk modulus is defined as the ratio of volume stress to volume strain (inverse of compressibility) B = volume stress volume strain = P V/V Example P = F/A P + P A F A F + F V V + V 10

Poisson s ratio The Poisson s ratio is the ratio of transverse to axial strain d transverse strain ν = d axial strain negative transverse strain in axial tension, positive in axial compression negative axial strain in compression, positive in tension equals 0.5 in perfectly incompressible material If the force is applied along x then we have ν = dε y dε x = dε z dε x 11

Poisson s ratio Example of a cube of size L 8.1-8.5 L F L ν L dε x = dx L+ L dx x 1 + L L x = v dε y = dy L L L y dy y = 1 L L ΔL dε z = dz z L L dz = L z L ν L 12

Continuum mechanics A deformable object is defined by its rest shape and the material parameters In the discrete case, the object M is a discrete set of points with material coordinates m M that samples the rest shape of the object When forces are applied, the object deforms each m moves to a new location x(m) u m = x m m can be seen as the displacement vector field e.g. a constant displacement field is a translation of the object 13

Continuum mechanics Material coordinate P with position X is deformed to p with position x Material coordinate Q with position X + dx is deformed to q with position x + dx If the deformation is very small (i.e. linear deformation in interval t), the displacements of the material coordinates can be described by x + dx = X + dx + u X + dx dx = X x + dx + u X + dx dx = dx + u X + dx u X dx = dx + du 14

Continuum mechanics Q u X + dx = u X + du u(x) du q dx dx dx X + dx P x + dx u(x) p X x O dx = dx + du 15

Continuum mechanics du is the relative displacement vector It represents the relative displacement of Q with respect to P in the deformed configuration Now if we assume that Q is very close to P and that the displacement field is continuous, we have u X + dx = u X + du u X + u dx where the gradient of the displacement field is (in 3D) the 3 3 matrix of the partial derivatives of u u = u x u y u z v x w x v y w y v z w z where u = u, v, w T 16

Continuum mechanics With that definition of the relative displacement vector, we can calculate the relative position of q dx = dx + du = dx + u dx dx = I + u dx = F dx We call F the material deformation gradient tensor It characterizes the local deformation at a material coordinate, i.e. provides a mapping between the relative position at rest and the relative position after deformation 17

Strain and stress The strain and stress are related to the material deformation gradient tensor F, and so to the displacement field u In interactive applications, we usually use the Green- Cauchy strain tensors ε G = 1 2 u + u T + u T u ε C = 1 u + u T 2 And stress tensor from Hooke s linear material law σ = E ε where E is the elasticity tensor and depends on the Young s modulus and Poisson s ratio (and more) 18

Modeling soft bodies Two types of approaches are possible to simulate deformable models Lagrangian methods (particle-based) a model consists of a set of moving points carrying material properties convenient to define an object as a connected mesh of points or a cloud of points, suitable for deformable soft bodies examples: Finite Element/Difference/Volume methods, Massspring system, Coupled particle system, Smoothed particle hydrodynamics Eulerian methods (grid-based) scene is a stationary set of points where the material properties change over time boundary of object not explicitly defined, suitable for fluids 19

Finite Element Method FEM is used to numerically solve partial differential equations (PDEs) by discretization of the volume into a large finite number of disjoint elements (3D volumetric mesh) The PDE of the equation of motion governing dynamic elastic materials is given by ρ a = σ + F where ρ is the density of the material, a is the acceleration of the element, σ is the divergence of stress (internal forces) and F the external forces 20

Finite Element Method First the deformation field u is estimated from the positions of the elements within the object Given the current local strain, the local stress is calculated The equation of motion of the element nodes is obtained by integrating the stress field over each element and relating this to the node accelerations through the deformation energy E = ε m σ m dm V 21

Finite Differences Method If the object M is sampled using a regular spatial grid, the PDE can be discretized using finite differences (FD) easier to implement that FEM difficult to approximate complex boundaries Deformation energy comes from difference between metric tensors of the deformed and original shapes Derivative of this energy is discretized using FD Finally semi-implicit integration is used to move forward through time 22

Finite Volume Method In the Finite Volume method, the nodal forces are not calculated from the derivation of the deformation energy But first internal forces f per unit area of a plane (of normal n) are calculated from the stress tensor f = σ n The total force acting on a face A of an element is f A = σ da = A σ n A for planar element faces (stress tensor constant within an element) By iterating on all faces of an element, we can then distribute (evenly) the force among adjacent nodes 23

Boundary Element Method The boundary element method simplifies the finite element method from a 3D volume problem to a 2D surface problem PDE is given for boundary deformation only works for homogenous material topological changes more difficult to handle 24

Mass-Spring System An object consists of point masses connected by a network of massless springs The state of the system is defined by the positions x i and velocities v i of the masses i = 1 n The force f i on each mass is computed from the external forces (e.g. gravity, friction) and the spring connections with its neighbors The motion of each mass point f i = m i a i is summed up for the entire system in M a = f(x, v) where M is a 3n 3n diagonal matrix 25

Mass-Spring System The mass points are usually regularly spaced in a 3D lattice The 12 edges are connected by structural springs resist longitudinal deformations Opposite corner mass points are connected by shear springs resist shear deformations The rest lengths define the rest shape of the object 26

Mass-Spring System The force acting on mass point i generated by the spring connecting i and j is f i = Ks i ( x ij l ij ) x ij x ij where x ij is the vector from positions i to j, K i is the stiffness of the spring and l ij is the rest length To simulate dissipation of energy along the distance vector, a damping force is added f i = Kd i v j v i T xij x ij T x ij x ij 27

Mass-Spring System Intuitive system and simple to implement Not accurate as does not necessarily converge to correct solution depends on the mesh resolution and topology spring constants chosen arbitrarily Can be good enough for games, especially cloth animation as can have strong stretching resistance and weak bending resistance 28

Coupled Particle System Particles interact with each other depending on their spatial relationship Referred to as spatially coupled particle system these relationships are dynamic, so geometric and topological changes can take place Each particle p i has a potential energy E Pi which is the sum of the pairwise potential energies between the particle p i and the other particles E Pi = E Pij j i 29

Coupled Particle System The force f i applied on the particle at position p i is f i = pi E Pi = j i pi E Pij where pi E Pi = de Pi dx i, de Pi dy i, de Pi dz i To reduce computational costs, interactions to a neighborhood is used potential energies weighted according to distance to particle 30

Smoothed Particle Hydrodynamics SPH uses discrete particles to compute approximate values of needed physical quantities and their spatial derivatives obtained by a distance-weight sum of the relevant properties of all the particles which lie within the range of a smoothing kernel Reduces the programming and computational complexity suitable for gaming applications 31

Smoothed Particle Hydrodynamics The equation for any quantity A at any point r is given by A r = m j A j ρ j j W( r r j, h) where W is the smoothing kernel (usually Gaussian function or cubic spline) and h the smoothing length (max influence distance) for example the density can be calculated as ρ r = m j j W( r r j, h) It is applied to pressure and viscosity forces, while external forces are applied directly to the particles 32

Smoothed Particle Hydrodynamics The spatial derivative of a quantity can be calculated from the gradient of the kernel the equations of motion are solved by deriving forces By varying automatically the smoothing length of individual particles you can tune the resolution of a simulation depending on local conditions typically use a large length in low particle density regions and a smaller length in high density regions Easy to conserve mass (constant number of particles) but difficult to maintain incompressibility of the material 33

Eulerian Methods Eulerian methods are typically used to simulate fluids (liquids, smoke, lava, cloud, etc.) The scene is represented as a regular voxel grid, and fluid dynamics describes the displacements we apply finite difference formulation on the voxel grid the velocity is stored on the cell faces and the pressure is stored at the center of the cells Heavily rely on the Navier-Stokes equations of motion for a fluid 34

Navier-Stokes equations They represent the conservation of mass and momentum for an incompressible fluid u = 0 Inertia (per volume) Divergence of stress ρ u t + u u = ν u p + f Unsteady acceleration Convective acceleration Viscosity Pressure gradient Other body forces u t is the time derivative of the fluid velocity (the unknown), p is the pressure field, ν is the kinematic viscosity, f is the body force per unit mass (usually just gravity ρg) 35

Navier-Stokes equations First f is scaled by the time step and added to the current velocity Then the advection term u u is solved it governs how a quantity moves with the underlying velocity field (time independent, only spatial effect) it ensures the conservation of momentum sometimes called convection or transport solved using a semi-lagrangian technique 36

Navier-Stokes equations Then the viscosity term ν u = v 2 u is solved it defines how a cell interchanges with its neighbors also referred to as diffusion viscous fluids can be achieved by applying diffusion to the velocity field it can be solved for example by finite difference and an explicit formulation 2-neighbor 1D: u i (t) = v t u i+1 + u i 1 2u i 4-neighbor 2D: u i,j t = v t u i+1,j + u i 1,j + u i,j+1 + u i,j 1 4u i,j Taking the limit gives indeed v 2 u 37

Navier-Stokes equations Finally, the pressure gradient is found so that the final velocity will conserve the volume (i.e. mass for incompressible fluid) sometimes called pressure projection it represents the resistance to compression p Lesser density Greater density 38

Navier-Stokes equations We make sure the velocity field stays divergencefree with the second equation u = 0, i.e. the velocity flux of all faces at each fluid cell is zero (everything that comes in, goes out) The equation u t + t = u t t p is solved from its combination with u = 0, giving u t + t = u t t p = 0 t 2 p = u(t) with which we solve for p, then plug back in the u(t + t) equation to calculate the final velocity 39

Navier-Stokes equations Compressible fluids can also conserve mass, but their density must change to do so Pressure on boundary nodes In free surface cells, the fluid can evolve freely (p = 0) so that for example a fluid can splash into the air Otherwise (e.g. in contact with a rigid body), the fluid cannot penetrate the body but can flow freely in tangential directions u boundary n = u body n 40

End of Soft body physics Next Physics engine design and implementation