Animation. Overview Traditional Animation Keyframe Animation Interpolating Rotation. 1999 Star Wars: Phantom Menace. 2002 LOTR Two Towers

Similar documents
Fundamentals of Computer Animation

COMP Visualization. Lecture 15 Animation

The 3D rendering pipeline (our version for this class)

Fundamentals of Computer Animation

Fundamentals of Computer Animation

Introduction to Computer Graphics Marie-Paule Cani & Estelle Duveau

Interactive Computer Graphics

animation animation shape specification as a function of time

Introduction to. With Slides from Dongho Kim and Karen Liu. School of Computer Soongsil University Animation. Computer Animation

CS 4300 Computer Graphics. Prof. Harriet Fell Fall 2012 Lecture 33 November 26, 2012

CS 4204 Computer Graphics

Animation (-4, -2, 0 ) + (( 2, 6, -4 ) - (-4, -2, 0 ))*.75 = (-4, -2, 0 ) + ( 6, 8, -4)*.75 = (.5, 4, -3 ).

CIS 536/636 Introduction to Computer Graphics. Kansas State University. CIS 536/636 Introduction to Computer Graphics

Kinematical Animation

Graphics. Computer Animation 고려대학교 컴퓨터 그래픽스 연구실. kucg.korea.ac.kr 1

Two hours UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE. M.Sc. in Advanced Computer Science. Friday 18 th January 2008.

animation shape specification as a function of time

Goldsmiths, University of London. Computer Animation. Goldsmiths, University of London

C O M P U C O M P T U T E R G R A E R G R P A H I C P S Computer Animation Guoying Zhao 1 / 66 /

The Fundamental Principles of Animation

Computer Animation. CS 445/645 Fall 2001

Computer Animation in Future Technologies

Computer Animation. Jason Lawrence CS 4810: Graphics

Computer Animation. Lecture 2. Basics of Character Animation

Metrics on SO(3) and Inverse Kinematics

CIS 536/636 Introduction to Computer Graphics. Kansas State University. CIS 536/636 Introduction to Computer Graphics

Animation. Persistence of vision: Visual closure:

Maya 2014 Basic Animation & The Graph Editor

Today. Keyframing. Procedural Animation. Physically-Based Animation. Articulated Models. Computer Animation & Particle Systems

INTRODUCTION TO RENDERING TECHNIQUES

2.5 Physically-based Animation

Lesson Plan. Performance Objective: Upon completion of this assignment, the student will be able to identify the Twelve Principles of Animation.

Develop Computer Animation

Kinematics & Dynamics

Essential Mathematics for Computer Graphics fast

Course Description. CENG 732 Computer Animation. Course Objectives. Lecture Time/Place. Prerequisites. Textbook

Computer Animation. Computer Animation. Principles of Traditional Animation. Outline. Principles of Traditional Animation

3D Tranformations. CS 4620 Lecture 6. Cornell CS4620 Fall 2013 Lecture Steve Marschner (with previous instructors James/Bala)

CG T17 Animation L:CC, MI:ERSI. Miguel Tavares Coimbra (course designed by Verónica Orvalho, slides adapted from Steve Marschner)

Computing Euler angles from a rotation matrix

Chapter 1. Animation. 1.1 Computer animation

CS 4620 Practicum Programming Assignment 6 Animation

Computers in Film Making

ART 269 3D Animation Fundamental Animation Principles and Procedures in Cinema 4D

MODELING AND ANIMATION

ACE: After Effects CS6

Animation. Each frame is a photograph of a drawing Each drawing differs slightly from the one before it The drawings are photographed one- by- one

CMSC 425: Lecture 13 Animation for Games: Basics Tuesday, Mar 26, 2013

New Media production week 9

Understanding Rotations

Outline. Animation. 1. Squash and Stretch. Overview: Traditional Animation. Squash and Stretch Cont. 2. Timing and Motion

College of Computing and Graphics, Visualization, and Usability Center. Georgia Institute of Technology. Atlanta, GA

M2: Animation Techniques

Rigid body dynamics using Euler s equations, Runge-Kutta and quaternions.

ACE: After Effects CC

Motion Capture Technologies. Jessica Hodgins

Program of Study. Animation (1288X) Level 1 (390 hrs)

Logistics. Projects. Announcement. Animation pipeline. Plan for today. Animation Pipeline, Principles, Tools. Test . Test file in mycourses

Chapter 10 Rotational Motion. Copyright 2009 Pearson Education, Inc.

Blender 3D Animation

MT. DIABLO UNIFIED SCHOOL DISTRICT COURSE OF STUDY

Lecture L6 - Intrinsic Coordinates

Animation. The Twelve Principles of Animation

B2.53-R3: COMPUTER GRAPHICS. NOTE: 1. There are TWO PARTS in this Module/Paper. PART ONE contains FOUR questions and PART TWO contains FIVE questions.

Geometric Transformation CS 211A

CHAPTER 6 TEXTURE ANIMATION

A Short Introduction to Computer Graphics

Cork Education and Training Board. Programme Module for. 3 Dimensional Computer Graphics. Leading to. Level 5 FETAC

Simulation of Trajectories and Comparison of Joint Variables for Robotic Manipulator Using Multibody Dynamics (MBD)

Lecture 16. Newton s Second Law for Rotation. Moment of Inertia. Angular momentum. Cutnell+Johnson: 9.4, 9.6

Character Animation Tutorial

Digital 3D Animation

2D DIGITAL ANIMATION TECHNIQUES

ACTUATOR DESIGN FOR ARC WELDING ROBOT

Tutorial: Biped Character in 3D Studio Max 7, Easy Animation

THEORETICAL MECHANICS

Cabri Geometry Application User Guide

CG: Computer Graphics

Rotation: Moment of Inertia and Torque

This week. CENG 732 Computer Animation. Challenges in Human Modeling. Basic Arm Model

Experiment 2: Conservation of Momentum

PHY231 Section 2, Form A March 22, Which one of the following statements concerning kinetic energy is true?

Working With Animation: Introduction to Flash

Unified Lecture # 4 Vectors

Quaternions. Jason Lawrence CS445: Graphics. Acknowledgment: slides by Misha Kazhdan, Allison Klein, Tom Funkhouser, Adam Finkelstein and David Dobkin

PHY231 Section 1, Form B March 22, 2012

Overview of the Adobe Flash Professional CS6 workspace

Review B: Coordinate Systems

Lecture 7. Matthew T. Mason. Mechanics of Manipulation. Lecture 7. Representing Rotation. Kinematic representation: goals, overview

Copyright 2011 Casa Software Ltd.

Chapter 3: Animation. Creating Frames and Keyframes. After completing this module, you ll be able to:

3D Modeling, Animation, and Special Effects ITP 215x (2 Units)

Computer Games. CSCI-GA Spring Hubertus Franke. ( frankeh@cims.nyu.edu )

Path Tracking for a Miniature Robot

Force on Moving Charges in a Magnetic Field

Robot coined by Karel Capek in a 1921 science-fiction Czech play

Force. Force as a Vector Real Forces versus Convenience The System Mass Newton s Second Law. Outline

Isaac Newton s ( ) Laws of Motion

B4 Computational Geometry

Transcription:

Animation Overview Traditional Animation Keyframe Animation Interpolating Rotation 1999 Star Wars: Phantom Menace 2002 LOTR Two Towers 2001 Final Fantasy 1

Computer Animation Models have parameters Polygon positions, normals, spline control points, joint angles, camera parameters, lights, color n parameters define an n-dimensional state space Values of n parameters = point in state space Animation defined by path through state space To produce animation:» 1. start at beginning of state space path» 2. set the parameters of your model» 3. render the image» 4. move to next point along state space path, repeat 2 Path usually defined by a set of motion curves» one for each parameter Every animation technique reduces to specifying the state space trajectory the state space will change with the technique Animation vs. Modeling Modeling and animation are tightly coupled Modeling: what are the control knobs and what do they do? Animation: how to vary them to generate desired motions? 2

Overview Animation techniques Traditional animation (frame-by-frame) Keyframing Procedural Behavioral Performance-based (motion capture) Physically based (dynamics) Modeling issues Rotations Inverse kinematics Traditional Cel Animation Film runs at 24 frames per second (fps) That s 1440 pictures to draw per minute 1800 fpm for video (30fps) Productions issues: Need to stay organized for efficiency and cost reasons Need to render the frames systematically (render farms) Artistic issues: How to create the desired look and mood while conveying story? Artistic vision has to be converted into a sequence of still frames Not enough to get the stills right--must look right at full speed» Hard to see the motion given the stills» Hard to see the motion at the wrong frame rate 3

Traditional Animation: The Process Story board Sequence of drawings with descriptions Story-based description Key Frames Draw a few important frames as line drawings» For example, beginning of stride, end of stride Inbetweens Draw the rest of the frames Painting Redraw onto acetate Cels, color them in Hierarchy of jobs (and salary) Layered Motion It s often useful to have multiple layers of animation How to make an object move in front of a background? Use one layer for background, one for object Can have multiple animators working simultaneously on different layers, avoid re-drawing and flickering Transparent acetate allows multiple layers Draw each separately Stack them together on a copy stand Transfer onto film by taking a photograph of the stack 4

Story Boarding (from A Bug s Life ) Principles of Traditional Animation [Lasseter, SIGGRAPH 1987] Stylistic conventions followed by Disney s animators and others (but this is not the only interesting style, of course) From experience built up over many years Squash and stretch -- use distortions to convey flexibility Timing -- speed conveys mass, personality Anticipation -- prepare the audience for an action Followthrough and overlapping action -- continuity with next action Slow in and out -- speed of transitions conveys subtleties Arcs -- motion is usually curved Exaggeration -- emphasize emotional content Secondary Action -- motion occurring as a consequence Appeal -- audience must enjoy watching it 5

Principles of Traditional Animation Squash and Stretch 6

Squash and Stretch Anticipation 7

Follow Through Secondary Action 8

Computer Assisted Animation Computerized Cel painting Digitize the line drawing, color it using seed fill Eliminates cel painters (low rung on totem pole) Widely used in production (little hand painting any more) e.g. Lion King Cartoon Inbetweening Automatically interpolate between two drawings to produce inbetweens (a la morphing) Hard to get right» inbetweens often don t look natural» what are the parameters to interpolate? Not clear...» not used very often 3D Computer Animation Generate the images by rendering a 3-D model Vary the parameters to produce the animation Brute force Manually set the parameters for each and every frame For an n parameter model: 1440n values per minute Traditional keyframing Lead animators draw the important frames Underpaid drones draw the inbetweens Computer keyframing Lead animators create the important frames with 3-D computer models Unpaid computers draw the inbetweens The dominant production method 9

Interpolation Hard to interpolate hand-drawn keyframes Computers don t help much The situation is different in 3D computer animation: Each keyframe is a defined by a bunch of parameters (state) Sequence of keyframes = points in high-dimensional state space Computer inbetweening interpolates these points How? You guessed it: splines Keyframing Basics Despite the name, there aren t really keyframes, per se. For each variable, specify its value at the important frames. Not all variables need agree about which frames are important. Hence, key values rather than key frames Create path for each parameter by interpolating key values params frames key values interpolated values 10

Keyframing: Issues What should the key values be? When should the key values occur? How can the key values be specified? How are the key values interpolated? What kinds of BAD THINGS can occur from interpolation? Invalid configurations (pass through objects) Unnatural motions (painful twists/bends) Jerky motion Keyframe Animation: Production Issues How to learn the craft apprentice to an animator practice, practice, practice Read Cinefex, Pixar starts with animators, teaches them computers and starts with computer folks and teaches them some art 11

From the Making of Toy Story Scene from Toy Story II 12

How Do You Interpolate Between Keys? Splines: non-uniform, C 1 is pretty good Velocity control is needed at the keyframes Classic example - a ball bouncing under gravity zero vertical velocity at start high downward velocity just before impact lower upward velocity after motion produced by fitting a smooth spline looks unnatural What kind of spline might we want to use? Hermite is good What kind of continuity do we want? How Do You Interpolate Between Keys? 13

Problems with Interpolation Splines don t always do the right thing Classic problems Important constraints may break between keyframes»feet sink through the floor»hands pass through walls 3D rotations»euler angles don t always interpolate in a natural way Classic solutions: More keyframes! Quaternions help fix rotation problems Keyframing Examples From SIGGRAPH 2002 Electronic Theatre Program Carl & Ray: 3D Character Animation Work for Blockbuster Entertainment It s not the end of the world, Super Furry Animals Polygon Family: Episode 2 Keyframing is an important element, but not everything. 14

Interpolating Rotations Euler angles Q: What kind of compound rotation do you get by successively turning about each of the 3 axes at a constant rate? A: Not the one you want Axis-angle Euler Angles Good for single-axis rotations Awkward for other rotations Gimbal Lock x z x z y y Gimbal Locked Gimbal A Gimbal is a hardware implementation of Euler angles (used for mounting gyroscopes, expensive globes) Gimbal lock is a basic problem with representing 3-D rotations using Euler angles 15

Quaternion Rotation We can think of rotations as lying on an n-d unit sphere T 2 T 1 1-angle (T) rotation (unit circle) 2-angle (T-I) rotation (unit sphere) Interpolating rotations means moving on n-d sphere Can encode position on sphere by unit vector SLERP: Spherical Linear Interpolation» take shortest path between two points on unit sphere How about 3-angle rotations? Quaternion Rotation A quaternion is a 4-D unit vector q = [x y z w] It lies on the unit hypersphere x 2 +y 2 +z 2 +w 2 =1 For rotation about (unit) axis v by angle T vector part (sin T/2) v = [x y z] scalar part cos T/2 = w The rotation matrix corresponding to a quaternion is 1-2y 2-2z 2 2xy+2wz 2xz-2wy 2xy-2wz 1-2x 2-2z 2 2yz+2wx 2xz+2wy 2yz-2wx 1-2x 2-2y 2 Quaternion Interpolation represent rotation as quaternion SLERP: linearly interpolate quaternions q1 and q2 and normalize convert to rotation matrix to apply the rotation Only a unit quaternion encodes a rotation - normalize by dividing by x 2 +y 2 +z 2 +w 2 16

q iˆ 2 ij ˆˆ Where did this come from? W Xiˆ Yj ˆ Zkˆ ˆj 2 kˆ 2 kˆ ˆˆ ji 1 W, X, Y, and Z are real. Consider a normalized quaternion q and a nonnormalized quaternion v v q 1 aiˆ bj ˆ ckˆ W Xiˆ Yj ˆ Zkˆ Where did this come from? (2) Write out v = qvq -1 and expand it like a matrix equation for the i, j, and k terms. a b c ¹ 2 2 12( Y Z ) 2( XY ZW) 2( XZ YW) 2( XY ZW) 12( X 2 Z 2 2( YZ XW) ) 2( XZ YW) a 2( YZ XW) b 2 2 12( X Y ) ¹ c¹ 17

Where did this come from??? (3) This is the same rotation matrix we saw earlier It s orthogonal and has determinant 1, so it must be a pure rotation. It leaves the vector (X,Y,Z) T invariant, so it must be around that axis. To find the angle, consider a rotation purely about X and use the half-angle formulas from trig. Note that it s double-valued: two quaternions give the same rotation. The final result: a rotation about (X,Y,Z) T by an angle q can be represented as the quaternion: q T ˆ ˆ T cos ( Xi Yj Zk)ˆsin 2 2 Quaternion Interpolation Interpolating quaternions produces better results than Euler angles A quaternion is a point on the 4-D unit sphere interpolating rotations requires a unit quaternion at each step - another point on the 4-D sphere move with constant angular velocity along the great circle between the two points Spherical Linear interpolation (SLERPing) Any rotation is given by 2 quaternions, so pick the shortest SLERP To interpolate more than two points: Use higher-order quaternion interpolation, e.g., cubic Solve a non-linear variational constrained optimization (numerically) Further information, see papers by Ken Shoemake» SIGGRAPH '85 Proc. (Computer Graphics, V. 19, No. 3, P.245)» Quaternions tutorial, http://www.cs.wisc.edu/graphics/courses/cs-838-2002/papers/quatut.pdf 18

SLERP: Spherical Linear Interpolation Algebraic form: Slerp(q 0, q 1 ; t) = (q 1 q 0-1 ) t q 0» Useful form for analysis.» NOTE: q t = [FRVW ), v VLQW )] for q = [FRV ), v VLQ )] Implementation form: where Problem: Slerp may not be smooth enough Kinematics & Inverse Kinematics We need help in positioning joints Kinematics gives motions in terms of joint angles, velocities, and positions used by most keyframing and procedural animation systems Inverse kinematics determine joint angles from positions e.g. calculate the shoulder, elbow, and wrist rotation parameters in order to put the hand here better for interaction sometimes underdetermined (i.e. many combinations of joint angles to achieve a given end result) used a lot in robotics 19

Procedural Animation Define the motion using formulas Hand-crafted Physically based The animator must be a programmer Keyframing starts to become procedural as expressions are added At some level of complexity it becomes easier/more efficient than keyframing. Procedural Animation Battle of Helm s Deep, LOTR 20

Dynamics Generate motion by specifying mass and force, apply physical laws (e.g., Newton s laws) Simulates physical phenomena gravity momentum (inertia) collisions friction fluid flow (drag, turbulence,...) deformation fracture Active Simulations 21

Passive Simulations Performance-based Animation (Motion Capture) Record the animation from live action simplest method - rotoscope (trace) over video of real motions Real time input devices electronic puppeteering Motion capture track motion of reference points» body or face or hands magnetic optical exoskeletons convert to joint angles (not always straightforward) use these angles to drive an articulated 3-D model These motion paths can be warped 22

Motion Capture 23