procedural animation. broad class particle systems (reeves ‘83) behavioral animation (reynolds...
TRANSCRIPT
Procedural Animation
Broad Class
• Particle Systems (Reeves ‘83)
• Behavioral Animation (Reynolds ‘87)
• Intelligent Systems (game/strategy/AI)
• Physically Based Modeling (water, gravity)
• Input Driven (face animation)
• Algorithmic (e.g. Plant growth)
Particle/Behavior Examples
• Explosions, fireworks
• Waterfall, river, spray off waves
• Special effects e.g. lawnmower man
• Moving models: grass, hair
• Group behavior e.g. school of fish
Proc. Animation Types
Type # of Elements
Physics/interaction
Intelligence
Particles many Withenvironment
none
Flocks some Environment & members
limited
Autonomous Behavior
few little high
Input-DrivenSpeech phonemes drive facial animation (Kakumanu,2001)
“Pizzerias are convenient for a quick lunch”
Procedural Animation Type?
Properties of Particles
• Lifespan (birth/death)
• Position
• Velocity
• Shape• Color• Transparency
Particle Systems
• Assumptions: particles– Do not collide with each other– Do not cast shadows on other
particles, just on environment– Do not reflect light; modeled
as point light sources
Collision Avoidance
Test for Collision with Bounding Sphere
C
P
t
V
k
s
s = | C – P |
k = (C – P) V/|V|
t = sqrt( s2 – k2 )
If ( t < radius ), penetration of bounding sphere occurs on current path
radius
Collision Avoidance
C
P
V
B
rr
tsk
r2 = s2 + t2
k = sqrt( |C – P|2 – r2 )
k2 = s2 + (|C-P| - t)2
k2 = r2 – t2 + (|C-P| - t)2
k2 = r2 – t2 + |C-P|2 – 2|C-P|t + t2
t = (k2 – r2 - |C-P|2)/(-2|C-P|)
s = sqrt(r2 – t2)
Right triangles (hypotenuse last):
1. s, t, r
2. k, r, |C-P|
3. (|C-P|-t),s,k
Solve for tsubstitute
Expand
New Trajectory
C
P
V
B
rr
tsk
t = (k2 – r2 - |C-P|2)/(-2|C-P|)
s = sqrt(r2 – t2)
U = (C – P)/ (|C – P|)
W = ((UxV) x U)/ |(UxV) x U|
U
W
B = P + (|C-P| -t)U + sW
Environment
• Physics/gravity
• Obstacles
• Constrained spawning area
Extras
• Particle-particle interaction
• Spawning new generations (e.g. 2nd stage fireworks)