Graphics
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 1
Computer Animation
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 2
Computer Animation
What is Animation?
Make objects change over time
according to scripted actions
What is Simulation?
Predict how objects change over
time according to physical laws
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 3
Outline
Principles of Animation
Keyframe Animation
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 4
Principle of Traditional
Animation – Disney –
Squash and Stretch
Slow In and Out
Anticipation
Exaggeration
Follow Through and Overlapping Action
Timing
Staging
Straight Ahead Action and Pose-to-Pose Action
Arcs
Secondary Action
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 5
Squash and Stretch
Squash
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 6
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 7
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 8
Computer Animation
Animation Pipeline
3D modeling
Motion specification
Motion simulation
Shading, lighting, & rendering
Postprocessing
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 9
Outline
Principles of Animation
Keyframe Animation
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 10
Keyframe Animation
Define Character Poses at Specific Time
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 11
Keyframe Animation
Interpolate Variables Describing Keyframes
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 12
Inbetweening
Linear Interpolation
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 13
Inbetweening
Spline Interpolation
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 14
Inbetweening
Spline Interpolation
Maybe good enough
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 15
Inbetweening
Spline Interpolation
Maybe good enough
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 16
Inbetweening
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 17
Outline
Principles of Animation
Keyframe Animation
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 18
Articulated Figures
Character Poses Described by Set of Rigid
Bodies Connected by “Joints”
Base
Arm
Hand
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 19
Articulated Figures
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 20
Articulated Figures
Joints Provide Handles for Moving
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 21
Summary
Animation Requires ...
Modeling
Scripting
Inbetweening
Lighting, shading
Rendering
Image processing
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 22
Motion Capture
Motion capture = Motion tracking = Mocap
Process of recording movement and translating
the movement onto a digital model
To animate digital character models in 3D animation
Records actions of human actors, and use the
information gathered
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 23
Motion Capture
Motion of an actor can be captured with various
methods
Markers
Without Markers (Optical)
Mechanical motion
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Motion Capture
Application
Military training
simulations
Video games
Films
Sports
Medical applications
kucg.korea.ac.kr 24KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Motion Capture
Advantages
Can replace key-frame based animation with
smoother animation with much less efforts
Recording various test animations can be performed
without much concern
Complex, and physically accurate animation
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Motion Capture
Disadvantages
Special hardware & software are required
Required software, hardware and personnel can be
expensive
Motions which are not physically correct cannot be or
are hard to be captured
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Motion Capture
kucg.korea.ac.kr 27
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Motion Capture
kucg.korea.ac.kr 28
The Lord of The Rings,
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 29
Overview of Kinematics &
Dynamics
Kinematics
Consider only motion
Determined by positions, velocities, accelerations
Dynamics
Consider underlying forces
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 30
Example: 2-Link Structure
Two Links Connected by Rotational Joints
“End-Effector”
X=(
x
,
y
)
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 31
Forward Kinematics
Animator Specifies Joint Angles:
Q
1
and
Q
2
Computer Finds Positions of End-Effector: X
X=(
x
,
y
)
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 32
Inverse Kinematics
What If Animator Knows Position of
“End-Effector”
Animator Specifies End-Effector Positions: X
Computer Finds Joint Angles:
Q
1
and
Q
2
“End-Effector”
X=(
x
,
y
)
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 33
Inverse Kinematics
Problem for More Complex Structures
System of equations is usually under-defined
Multiple solutions
X=(
x
,
y
)
(0, 0)
Three unknowns:
Q
1
, Q
2
, Q
3
Two equations:
x
,
y
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 34
Summary
Forward Kinematics
Specify conditions (joint angles)
Compute positions of end-effectors
Inverse Kinematics
“Goal-directed” motion
Specify goal positions of end effectors
Compute conditions required to achieve goals
Inverse kinematics provides easier
specification for many animation tasks,
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 35
Overview
Kinematics
Consider only motion
Determined by positions, velocities, accelerations
Dynamics
Consider underlying forces
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 36
Dynamics
Simulation of Physics Insures Realism of
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 37
Space Time Constraints
Animator Specifies Constraints
What the character’s physical structure is
e.g., articulated figure
What the character has to do
e.g., jump from here to there within time
t
What other physical structures are present
e.g., floor to push off and land
How the motion should be performed
e.g., minimize energy
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 38
Space Time Constraints
Advantages
Free animator from having to specify details of
physically realistic motion with spline curves
Easy to vary motions due to new parameters and/or
new constraints
Challenges
Specifying constraints and objective functions
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 39
Space Time Constraints
Adapting Motion
Original Jump
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 40
Space Time Constraints
Adapting Motion
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 41
Space Time Constraints
Adapting Motion
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 42
Space Time Constraints
Editing Motion
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Example
http://www.naturalmotion.com/endorphin.htm
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 44
Space Time Constraints
Advantages
Free animator from having to specify details of
physically realistic motion with spline curves
Easy to vary motions due to new parameters and/or
new constraints
Challenges
Specifying constraints and objective functions
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Physical simulation
Simulate natural phenomena based upon the
law of physics
Predict how objects change over time according to
physical laws
Physical simulations
Rigid, Soft bodies
Cloth, hair
Fluids (Liquids, Gases)
etc
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Example
“Fracturing Rigid Materials”, IEEE TVCG 2007,
Bao et al.
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Example
“Controlling fluid animation with Geometric
Potential”, CASA 2004, Hong and Kim
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Example
"Wrinkled Flames and Cellular Patterns",
SIGGRAPH 2007, Hong et al.
kucg.korea.ac.kr 48
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Rigid, Soft bodies
Zhaosheng Bao, Jeong-Mo Hong, Joseph Teran and Ron Fedkiw, "Fracturing Rigid Materials",
IEEE Transactions on Visualization and Computer Graphics, Volume 13, Issue 2, pp.370-378,
2007.
Shinar, T., Schroeder, C. and Fedkiw, R., "Two-way Coupling of Rigid and Deformable Bodies",
ACM SIGGRAPH/Eurographics Symposium on Computer Animation (SCA), edited by Doug
James and Markus Gross, pp. 95-103 (2008).
kucg.korea.ac.kr 49
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Cloth, Hair
Selle. A, Su, J., Irving, G. and Fedkiw, R., "Highly Detailed Folds and
Wrinkles for Cloth", IEEE TVCG (in press).
Selle, A., Lentine, M. and Fedkiw, R., "A Mass Spring Model for Hair
Simulation", SIGGRAPH 2008, ACM TOG 27, 64.1-64.11 (2008).
kucg.korea.ac.kr 50
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Fluid simulation
(Water, Smoke)
Losasso, F., Talton, J., Kwatra, N. and Fedkiw, R., "Two-way Coupled SPH and Particle Level
Set Fluid Simulation", IEEE TVCG 14, 797-804 (2008).
T. Kim, Nils Thürey, Doug James, and Markus Gross, “Wavelet turbulence for fluid simulation”,
SIGGRAPH 2008, ACM TOG 27.
kucg.korea.ac.kr 51
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Physical simulation
Why do we need physical simulation
It is nearly impossible to produce natural physical
phenomena manually without extreme effort
Can generate physically accurate motions
Can generate huge scale animations such as
explosion, tornado, tidal wave
Actors do not have to risk possible dangers of
extreme environments
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Applications of Physical
Simulation
kucg.korea.ac.kr 53
Movie
“
Pirates of the Caribbean(2007)”
Evian TV CF.
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
kucg.korea.ac.kr 54
Summary
Kinematics
Forward kinematics
Animator specifies joints (hard)
Compute end-effectors (easy)
Inverse kinematics
Animator specifies end-effectors (easier)
Solve for joints (harder)
Dynamics
Space-time constraints
Animator specifies structures & constraints (easiest)
Solve for motion (hardest)
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Navier-Stokes Equations
Appendix : Fluid Simulation
kucg.korea.ac.kr 55
Advection
External
force
Diffusion
Projection
Reference:
Jos Stam, "Stable Fluids", In
SIGGRAPH 99 Conference
Proceedings, Annual Conference Series
, August 1999, 121-128.
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Appendix : Fluid Simulation
kucg.korea.ac.kr 56
The advection step moves the density through a static velocity field.
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Appendix : Fluid Simulation
kucg.korea.ac.kr 57
The effect of
Density Diffusion
Velocity Diffusion
makes the fluid move more like a rigid object.
KUCG
Graphics Lab @ Korea University Graphics Lab @ Korea University
Appendix : Fluid Simulation
kucg.korea.ac.kr 58
To obtain an incompressible field we simply subtract
the gradient field from our current velocities.