passive dynamics and particle systems...hooke’s law etc. • physical phenomena gravity momentum...
TRANSCRIPT
![Page 1: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/1.jpg)
Passive Dynamics and Particle Systems
COS 426
![Page 2: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/2.jpg)
Computer Animation • Animation
Make objects change over time according to scripted actions
• Simulation / dynamics Predict how objects change over time
according to physical laws
University of Illinois
Pixar
![Page 3: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/3.jpg)
Dynamics
Hodgins
![Page 4: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/4.jpg)
Passive Dynamics • No muscles or motors
Smoke Water Cloth Fire Fireworks Dice
McAllister
![Page 5: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/5.jpg)
Passive Dynamics • Physical laws
Newton’s laws Hooke’s law Etc.
• Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture
McAllister
![Page 6: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/6.jpg)
Particle Systems • A particle is a point mass
Position Velocity Mass Drag Elasticity Lifetime Color
• Use lots of particles to model complex phenomena Keep array of particles Newton’s laws
p = (x,y,z)
v
![Page 7: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/7.jpg)
Particle Systems • For each frame:
For each simulation step (Δt) Create new particles and assign attributes Update particles based on attributes and physics Delete any expired particles
Render particles
![Page 8: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/8.jpg)
Creating Particles • Where to create particles?
Predefined source Where particle density is low Surface of shape etc.
Reeves
![Page 9: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/9.jpg)
Creating Particles • Example: particles emanating from shape
Line Box Circle Sphere Cylinder Cone Mesh
McAllister
![Page 10: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/10.jpg)
Creating Particles • Example: particles emanating from sphere
nigels.com
![Page 11: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/11.jpg)
Creating Particles • Example: particles emanating from sphere
Selecting random position on surface of sphere
1. z = random [−r, r] 2. phi = random [0, 2π) 3. d = sqrt(r2 − z2) 4. px = cx + d * cos(phi) 5. py = cy + d * sin(phi) 6. pz = cz + z z r
d
(cx,cy,cz)
![Page 12: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/12.jpg)
Creating Particles • Example: particles emanating from sphere
Selecting random direction within angle cutoff of normal
Angle cutoff
V
N
t1
t2 A
1. N = surface normal 2. A = any vector on tangent plane 3. t1 = random [0, 2π) 3. t2 = random [0, sin(angle cutoff)) 4. V = rotate A around N by t1 5. V = rotate V around VxN by acos(t2)
acos(t2)
![Page 13: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/13.jpg)
Particle Systems • For each frame:
For each simulation step (Δt) Create new particles and assign attributes Update particles based on attributes and physics Delete any expired particles
Render particles
![Page 14: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/14.jpg)
Equations of Motion • Newton’s Law for a point mass
f = ma
• Computing particle motion requires solving second-order differential equation
• Add variable v to form coupled first-order differential equations: “state-space form”
![Page 15: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/15.jpg)
Solving the Equations of Motion • Initial value problem
Know x(0), v(0) Can compute force (and therefore acceleration)
for any position / velocity / time Compute x(t) by forward integration
f x(0)
x(t)
Hodgins
![Page 16: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/16.jpg)
Solving the Equations of Motion • Forward (explicit) Euler integration
x(t+Δt) ← x(t) + Δt v(t) v(t+Δt) ← v(t) + Δt f(x(t), v(t), t) / m
Hodgins
![Page 17: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/17.jpg)
Solving the Equations of Motion • Forward (explicit) Euler integration
x(t+Δt) ← x(t) + Δt v(t) v(t+Δt) ← v(t) + Δt f(x(t), v(t), t) / m
• Problem: Accuracy decreases as Δt gets bigger
Hodgins
![Page 18: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/18.jpg)
Solving the Equations of Motion • Midpoint method (2nd-order Runge-Kutta)
1. Compute an Euler step 2. Evaluate f at the midpoint of Euler step 3. Compute new position / velocity using
midpoint velocity / acceleration
xmid ← x(t) + Δt / 2 * v(t) vmid ← v(t) + Δt / 2 * f(x(t), v(t), t) / m x(t+Δt) ← x(t) + Δt vmid
v(t+Δt) ← v(t) + Δt f(xmid, vmid, t) / m
Hodgins
![Page 19: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/19.jpg)
Solving the Equations of Motion • Adaptive step size
Repeat until error is below threshold 1. Compute xh by taking one step of size h 2. Compute xh/2 by taking 2 steps of size h / 2 3. Compute error = | xh - xh/2 | 4. If (error < threshold) break 5. Else, reduce step size and try again
error
xh
xh/2
![Page 20: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/20.jpg)
Particle System Forces • Force fields
Gravity, wind, pressure
• Viscosity/damping Drag, friction
• Collisions Static objects in scene Other particles
• Attraction and repulsion Springs between neighboring particles (mesh) Gravitational pull, charge
![Page 21: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/21.jpg)
Particle System Forces • Gravity
Force due to gravitational pull (of earth) g = acceleration due to gravity (m/s2)
mgfg = g = (0, -9.80665, 0)
![Page 22: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/22.jpg)
Particle System Forces • Drag
Force due to resistance of medium kdrag = drag coefficient (kg/s)
Air resistance sometimes taken as proportional to v2
vkf dragd −=
p
v
fd
![Page 23: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/23.jpg)
Particle System Forces • Sinks
Force due to attractor in scene
p
fs
2 intensity
dqadlaca fs ⋅+⋅+=
Sink Closest point on sink surface
d
![Page 24: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/24.jpg)
Particle System Forces • Gravitational pull of other particles
Newton’s universal law of gravitation
p
fG
-22-11 kg m N 10 x 6.67428=G
d
221
dm mGfG⋅
=
q
![Page 25: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/25.jpg)
Particle System Forces • Springs
Hooke’s law
fH
( )
tcoefficien springlength resting
),(/)(
),()(
==
−=−−=
−=
s
sH
ks
pqqpdpqpqD
Dsqpdkpf
![Page 26: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/26.jpg)
Particle System Forces • Springs
Hooke’s law with damping
( ) ( )[ ]
q ofvelocity )(p ofvelocity )(
tcoefficien dampingtcoefficien spring
length resting),(
/)(
)()( ),()(
==
===
−=−−=
⋅−+−=
qvpv
kks
pqqpdpqpqD
DDpvqvksqpdkpf
d
s
dsH
fH
v(p)
v(q)
sd mkk 2~
![Page 27: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/27.jpg)
Particle System Forces • Spring-mass mesh
Hodgins
![Page 28: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/28.jpg)
Particle System Forces • Collisions
Collision detection Collision response
Witkin
![Page 29: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/29.jpg)
Particle System Forces • Collision detection
Intersect ray with scene Compute up to Δt at time of first collision,
and then continue from there
Witkin
![Page 30: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/30.jpg)
Particle System Forces • Collision response
No friction: elastic collision (for mtarget >> mparticle: specular reflection)
Otherwise, total momentum conserved, energy dissipated if inelastic
N
In Out θ θ
![Page 31: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/31.jpg)
Particle Systems • For each frame:
For each simulation step (Δt) Create new particles and assign attributes Update particles based on attributes and physics Delete any expired particles
Render particles
![Page 32: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/32.jpg)
Deleting Particles • When to delete particles?
When life span expires When intersect predefined sink surface Where density is high Random
McAllister
![Page 33: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/33.jpg)
Particle Systems • For each frame:
For each simulation step (Δt) Create new particles and assign attributes Update particles based on attributes and physics Delete any expired particles
Render particles
![Page 34: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/34.jpg)
Rendering Particles • Rendering styles Points Polygons Shapes Trails etc.
McAllister
![Page 35: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/35.jpg)
Rendering Particles • Rendering styles
Points Textured polygons: sprites Shapes Trails etc.
McAllister
![Page 36: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/36.jpg)
Rendering Particles • Rendering styles
Points Polygons Shapes Trails etc.
McAllister
![Page 37: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/37.jpg)
Rendering Particles • Rendering styles
Points Polygons Shapes Trails etc. McAllister
![Page 38: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/38.jpg)
Passive Dynamics • Examples
Smoke Water Cloth Fire Fireworks Dice
McAllister
![Page 39: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/39.jpg)
Example: Gravity
McAllister
![Page 40: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/40.jpg)
Example: Fire
![Page 41: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/41.jpg)
Example: Bouncing Off Particles
![Page 42: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/42.jpg)
Example: More Bouncing
Bender
![Page 43: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/43.jpg)
Example: Cloth
Breen
![Page 44: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/44.jpg)
Example: Cloth
Bender
![Page 45: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/45.jpg)
Example: Flocks & Herds
Reynolds
![Page 46: Passive Dynamics and Particle Systems...Hooke’s law Etc. • Physical phenomena Gravity Momentum Friction Collisions Elasticity Fracture . McAllister . Particle Systems • A particle](https://reader033.vdocuments.net/reader033/viewer/2022060417/5f146159e39596714a1b304d/html5/thumbnails/46.jpg)
Summary • Particle systems
Lots of particles Simple physics
• Interesting behaviors Waterfalls Smoke Cloth Flocks
• Solving motion equations For each step, first sum forces,
then update position and velocity