1 of 20

Procedural Animation

Computer Graphics Seminar

2017 Spring

Andreas Sepp

2 of 20

Coming up today

  • Keyframe animation
  • Procedural animation for basic character animation
    • Procedural animation with keyframe animation
    • Inverse kinematics
  • Procedural animation as a broader field
    • Artificial life animation
    • Physics based modelling and animation

3 of 20

Basic keyframe animation

  • Animator draws or models the starting and ending points of a transition, called keyframes, and sets their position in time
  • The remaining frames inbetween 2 keyframes are interpolated from them
  • The animator is in control of everything at every point in time

key key key

4 of 20

Basic keyframe animation problems

  • Transitions in interactive setting
    • Blend walking and running animation?
    • Create a walk ↔ run transition animation?
      • 15 animations - 105 blends required
  • Unrealistic movement
    • No proper feedback from the environment
    • Not acceptable anymore

5 of 20

Procedural Animation

  • a type of computer animation, used to automatically generate animation in real-time to allow for a more diverse series of actions than could otherwise be created using predefined animations
  • Animator not in control of everything anymore
  • a) Integrated with keyframe animation
    • Roughly follows keyframes
    • Change dynamically
      • e.g. getting hit while running, going up the stairs
  • b) Fully procedural animation
    • Initial parameters and some sort of input parameters are provided to control the animation
      • Initial position; forces, torques in time

6 of 20

Keyframe + procedural animation

  • Dynamic combining of multiple animations
    • Lower body running
    • Upper body swinging a sword
    • Body recoiling to a blow
  • What you can achieve with just 14 keyframes and procedural animation:

7 of 20

To actually feel connected to the world...

  • animated objects must physically be connected to it
    • Feet position should depend on the surface
    • Running into a wall
    • Climbing an object
  • To do this, a technique called inverse kinematics is used
  • First, we must understand what are rigging and kinematic chains

8 of 20

Rigging

  • Digital skeleton
    • Parts that do not move relative to themselves
    • Joints connecting the parts
  • Has an hierarchy called kinematic chain
    • E.g. abdomen → torso → left shoulder → left upper arm → left lower arm → palm → thumb

9 of 20

Inverse kinematics

  • The mathematical process of recovering the movements of an object in the world from some other data
  • When a finger is repositioned, what should rest of the body do?
    • Jacobian transpose method
    • Pseudoinverse method
    • Damped least squares method
    • Singular value decomposition method
  • https://www.youtube.com/watch?v=NxoIoW0mRtg

10 of 20

Fields of procedural animation

  • Artificial life
    • Behavioral animation
    • Artificial evolution
    • Branching object generation
    • Facial features
  • Physics-based modeling and animation
    • Particle systems
    • Rigid body dynamics
    • Fluid dynamics
    • Fur & hair dynamics
    • Flexible dynamics
      • Cloth
      • Ragdolling

11 of 20

Artificial life

  • Deals with things that are virtually alive
  • Behavioral animation
    • Simulates interactions of artificial lives
    • Flocking, predator-prey, virtual human behaviors
    • https://www.youtube.com/watch?v=M028vafB0l8
  • Artificial evolution
    • Evolution of artificial life forms
    • Artificial life forms reproduce and mutate over time
    • https://archive.org/details/sims_panspermia_1990
  • Branching object generation
    • Generating plants, trees etc and simulating their behaviour
    • L-systems, BOGAS
  • Facial features
    • Mostly replaced with mo-cap and post-editing

12 of 20

Physics based modeling and animation

  • Deals with things that are not alive
  • Particle systems
    • Simulate behaviors of fuzzy objects, such as clouds, smoke, fire and water
  • https://www.youtube.com/watch?v=MPV3B4kTFL

13 of 20

Physics based modeling and animation

  • Rigid body dynamics
    • Simulates dynamic interaction among rigid objects
    • Takes into account various physical characteristics
      • Elasticity, friction, mass
    • https://www.youtube.com/watch?v=VSQhvu8fZ0U
  • Fluid dynamics
    • Simulates flows, waves and turbulence of water and other liquids
    • https://www.youtube.com/watch?v=U3acQ5dDKEs

14 of 20

Fur & hair dynamics

15 of 20

TressFX

16 of 20

HairWorks

17 of 20

Flexible dynamics: cloth

  • Simulates behaviors of flexible objects, e.g. clothes
  • Geometric method
    • Only good for static frames
  • Cloth divided into vertices
  • Vertices positions are calculated
  • Vertices are connected with curves
  • Physical method
    • Cloth is treated as a vertex grid connected by springs
    • Each vertex has a point mass
    • Mechanical equilibrium is applied
  • Particle/energy method
    • Advancement of physical method
    • All vertices interact with each other directly
    • Energy interactions determine the shape
  • https://www.youtube.com/watch?v=KBfxnayIlOY

18 of 20

Flexible dynamics: ragdolling

  • Commonly used in place of static animations for falling/death etc
  • Verlet integration
    • Bones have simple constraints to bones further away
  • Inverse kinematics
    • Animation is played, at end IK applied to force a valid position
  • Blended ragdolling
    • Animation blended with physics
  • Fully procedural
    • Multi-layered physical models
    • Unique every time
  • https://www.youtube.com/watch?v=6rtOWhF6iw8

19 of 20

Some more videos

20 of 20

Thanks for listening!

https://www.youtube.com/watch?v=bYl7N4U-JMI