Algorithmic Animation
Problem
- Eadweard Muybridge, did pioneering work in photographic studies of motion in 1877
Now,
fastest camera takes 100 billion frames per second
- Similar to traditional animation given via "key frames", computer animation
via key values
- Values in-between these key ones are generated via interpolation
- Animation is typically given as a function of time
- Note, any attribute can be interpolated: position, scale, rotation, color,
transparency, up vector, etc.
Interpolation
- Basic technique: compute intermediate values between key-frames
- Linear
- Ease-in, Ease-out
- General Case: often given as a spline curve
Physically Based Models
- Animate objects according to physical principles
- Object motion is subject to world's forces according to f = ma
- This may sound easy, but to model accurately requires solving differential
equations
- Rather
than solve analytically, approximate by solving iteratively
- Euler integration
- Runge-Kutta
- Numerical instability arise based on step size and accumulated errors due
to approximation — a reason to learn Differential Equations and Numerical Methods :)
- Examples
Controlling Animation
- Sometimes animator wants some level of control over automatic animation
- Choosing among the many possible solutions
- Motion Capture (can get paid for this as an actor)
Borrowing from Cartoons
Artificial Life
- Computation is distributed over all agents in system
- Characterized by decentralized control where aggregate behavior is
emergent
- Simple rules, when combined, lead to complex behavior
- Can be easily parallelized and distributed
- Combine distributed computation over colonies, species, or even parts of a
single body
- Examples
References