Transcript L13_Forces

Forces - basic physics
Gravity
Friction - static and kinetic
Viscosity
Springs (Hooke’s law)
Damping
Rick Parent - CIS682
Friction
Supporting object
Resting contact
Fs
F
FN
Normal force
Static friction
Fs  usFN

Rick Parent - CIS682
Friction
Supporting object
Resting contact
Fk
F
FN
Normal force
Static friction
Kinetic friction

v
Fs  usFN
Fk  uk FN
Rick Parent - CIS682
Gravity
Gm1m 2
Fgravity 
r2
aobject 

F
mobject
Gmearth
2
2


32
ft
/s

9.8m
/s
2
rearth

Rick Parent - CIS682

Viscosity
Fv  kv nv
kv - depends on shape of object
n - depends on properties of liquid
For spherical object:
kv  6r
Terminal velocity - viscosity and gravity balance
E.g., for sphere:

mg  6rnv
Rick Parent - CIS682

Springs (Hooke’s law)
Spring’s rest length: exerts zero force
Fspring  kspring(x  x rest )
x
xrest
F
x
F
Rick Parent - CIS682
Spring Mesh
Edges => springs
Internal springs to stabilize shape
Rick Parent - CIS682
Damping
Calm down spring oscillations
Fdamping  kdampingv

F  (x  x rest )kspring  vkdamping
Rick Parent - CIS682
Mass-Spring-Damper System
Define point masses
postion
velocity
mass
force
fixed?
Define springs
point 1
point 2
rest length
kspring
kdamper
Multiple time samples per frame?
Rick Parent - CIS682
Mass-Spring-Damper System
For each point
Initialize force with wind
For each spring
Calculate spring-damper force
spring.point1.force += force
spring.point2.force -= force
For each point
acc = gravity
acc += mass/force
newVel = velocity + acc*dt
position += dt*(velocity+newVelocity)/2
Velocity = newVelocity
Rick Parent - CIS682
Examples
1, 4, 16 time
samples per frame
Rick Parent - CIS682
Examples
Multiple connectivity; fixing
a node adding gravity and
wind
Rick Parent - CIS682
Examples
Adding damping;
making a flag
Use controlled
random numbers to
add interest
Rick Parent - CIS682
Randomize
Controlled randomness adds more interest
To initial values (positions, velocities)
To force fields (wind direction, wind speed)
To spring constants, masses
To joint angles
Proximal joints: lower amplitude
Distal joints: higher amplitude
Coordinate frequence and phase
Rick Parent - CIS682
Angular Springs
1) Use angles (cosine) between normals
2) Place a linear spring between ends of triangles
Rick Parent - CIS682
Constrain Forces (soft constraints)
F
F
F
Non-penetration
Fix to surface
Rick Parent - CIS682
Constrain Forces (soft constraints)
Rick Parent - CIS682