Computer Graphics Chapter 12 Computer Animation
LET US ENTER INTO THE MAGICAL WORLD OF ANIMATION
Contents INTRODUCTION APPLICATIONS DESIGN OF ANIMATION SEQUENCES GENERAL COMPUTER ANIMATION FUNCTIONS RASTER ANIMATIONS COMPUTER ANIMATION LANGUAGES KEY FRAME SYSTEMS MOTION SPECIFICATIONS
Computer Animation What is Animation? What is Simulation? Make objects change over time according to scripted actions What is Simulation? Predict how objects change over time according to physical laws
Introduction Computer animation is the process used for generating animated images (moving images) using computer graphics. Animators are artists who specialize in the creation of animation. From Latin animātiō, "the act of bringing to life"; from animō ("to animate" or "give life to") and -ātiō ("the act of"). 2D ANIMATION 3D ANIMATION
APPLICATIONS Video games cartoon Mobile phones
Design Of Animation Sequences Steps for designing animation sequences. Storyboard Layout Object definitions Key frame specifications Generation of in-between frames
Storyboard Layout
Object Definitions
Key frame Specifications
In-between frames
GENERAL COMPUTER ANIMATION FUNCTIONS Animation software provide basic functions to create animation and process the individual object. Manipulate data object database. FUNCTIONS Motion generation. Object rendering. Amorphium Art of illusion
Raster Animations Real-time animations can be generated using raster operations.
ORGANISATION OF A VIDEO COLOUR TABLE 1 41H 65 255 1 Monitor 24-bit 65 Pixel value Red Green Blue
Computer Animation Languages GENERAL PURPOSE LANGUAGES: C,C++,Pascal, or Lisp(control animation sequences).
SPECIALIZED ANIMATION LANGUAGES Key frame systems Parameterized systems Scripting systems
Key frame Systems
Motion Specifications Various ways in which motions of objects ca be specified as: Direct Motion Specification. Goal-Directed Systems. Kinematics and Dynamics.
Direct Motion Specification
Goal Directed System
Kinematics and Dynamics Motion parameters such as position , velocity and acceleration are specified without reference to the forces. INVERSE KINEMATICS: Initial and final positions of objects at specified times and from that motion parameters . DYNAMICS: The forces that produce the velocities and accelerations are specified(physically based modeling). It uses laws such as Newton’s laws of motion , Euler or Navier -stokes equations.
Outline Principles of Animation Keyframe Animation Articulated Figures
Principle of Traditional Animation 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 Appeal
Squash and Stretch Stretch Squash
Slow In and Out
Anticipation
Computer Animation Animation Pipeline 3D modeling Motion specification Motion simulation Shading, lighting, & rendering Postprocessing
Outline Principles of Animation Keyframe Animation Articulated Figures
Keyframe Animation Define Character Poses at Specific Time Steps Called “Keyframes”
Keyframe Animation Interpolate Variables Describing Keyframes to Determine Poses for Character in between
Inbetweening Linear Interpolation Usually not enough continuity
Inbetweening Spline Interpolation Maybe good enough
Inbetweening Spline Interpolation Maybe good enough May not follow physical laws
Inbetweening Spline Interpolation Maybe good enough May not follow physical laws
Inbetweening Inverse Kinematics or Dynamics
Outline Principles of Animation Keyframe Animation Articulated Figures
Articulated Figures Character Poses Described by Set of Rigid Bodies Connected by “Joints” Base Arm Hand Scene Graph
Articulated Figures Well-Suited for Humanoid Characters
Articulated Figures Joints Provide Handles for Moving Articulated Figure
Inbetweening Compute Joint Angles between Keyframes Right Wrong consider the length constancy Right Wrong
Example: Walk Cycle Articulated Figure: Hip Upper Leg (Hip Rotate) Knee Lower Leg (Knee Rotate) Hip Rotate + Knee Rotate Lower Leg Ankle Foot (Ankle Rotate) Foot
Example: Walk Cycle Hip Joint Orientation:
Example: Walk Cycle Knee Joint Orientation:
Example: Walk Cycle Ankle Joint Orientation:
Challenge of Animation Temporal Aliasing Motion blur
Temporal Ailasing Artifacts due to Limited Temporal Resolution Strobing Flickering
Temporal Ailasing Artifacts due to Limited Temporal Resolution Strobing Flickering
Temporal Ailasing Artifacts due to Limited Temporal Resolution Strobing Flickering
Temporal Ailasing Artifacts due to Limited Temporal Resolution Strobing Flickering
Motion Blur Composite Weighted Images of Adjacent Frames Remove parts of signal under-sampled in time
Summary Animation Requires ... Scripting Inbetweening Modeling Scripting Inbetweening Lighting, shading Rendering Image processing
Overview Kinematics Dynamics Consider only motion Determined by positions, velocities, accelerations Dynamics Consider underlying forces Compute motion from initial conditions and physics
Example: 2-Link Structure Two Links Connected by Rotational Joints “End-Effector” X=(x, y) (0, 0)
X=(l1cosQ1+ l2cos(Q1+Q2), l1sinQ1+ l2sin(Q1+Q2)) Forward Kinematics Animator Specifies Joint Angles: Q1 and Q2 Computer Finds Positions of End-Effector: X X=(x, y) (0, 0) X=(l1cosQ1+ l2cos(Q1+Q2), l1sinQ1+ l2sin(Q1+Q2))
Forward Kinematics Joint Motions can be Specified by Spline Curves X=(x, y) (0, 0)
Forward Kinematics Joint Motions can be Specified by Initial Conditions and Velocities X=(x, y) (0, 0)
Example: 2-Link Structure What If Animator Knows Position of “End-Effector” “End-Effector” X=(x, y) (0, 0)
Inverse Kinematics Animator Specifies End-Effector Positions: X Computer Finds Joint Angles: Q1 and Q2 X=(x, y) (0, 0)
Inverse Kinematics End-Effector Postions can be Specified by Spline Curves X=(x, y) (0, 0)
Inverse Kinematics Problem for More Complex Structures System of equations is usually under-defined Multiple solutions X=(x, y) (0, 0) Three unknowns: Q1, Q2, Q3 Two equations: x, y
Inverse Kinematics Solution for More Complex Structures Find best solution (e.g., minimize energy in motion) Non-linear optimization X=(x, y) (0, 0)
Summary Forward Kinematics Inverse 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, but it is computationally more difficult
Overview Kinematics Dynamics Consider only motion Determined by positions, velocities, accelerations Dynamics Consider underlying forces Compute motion from initial conditions and physics
Dynamics Simulation of Physics Insures Realism of Motion
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
Space Time Constraints Computer Finds the “Best” Physical Motion Satisfying constraints Example: Particle with Jet Propulsion x(t) is position of particle at time t f(t) is force of jet propulsion at time t Particle’s equation of motion is: Suppose we want to move from a to b within t0 to t1 with minimum jet fuel:
Space Time Constraints Discretize Time Steps
Space Time Constraints Solve with Iterative Optimization Methods
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 Avoiding local minima during optimization
Space Time Constraints Adapting Motion Original Jump Heavier Base
Space Time Constraints Adapting Motion Hurdle
Space Time Constraints Adapting Motion Ski Jump
Space Time Constraints Editing Motion Original Adapted
Space Time Constraints Morphing Motion The female character morphs into a smaller character during her spine
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 Avoiding local minima during optimization
Dynamics Other Physical Simulations Rigid bodies Soft bodies Cloth Liquids Gases etc. Cloth Hot Gases cgvr.korea.ac.kr
Summary Kinematics Dynamics 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) Also other physical simulations