animation shape specification as a function of time



Similar documents
animation animation shape specification as a function of time

Introduction to Computer Graphics Marie-Paule Cani & Estelle Duveau

Kinematics & Dynamics

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

CS 4204 Computer Graphics

Interactive Computer Graphics

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

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

Fundamentals of Computer Animation

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 /

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

Metrics on SO(3) and Inverse Kinematics

Computer Animation. Lecture 2. Basics of Character Animation

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

Computer Animation. CS 445/645 Fall 2001

Chapter 1. Animation. 1.1 Computer animation

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

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

Kinematical Animation

Animation. Persistence of vision: Visual closure:

Blender 3D Animation

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

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

Computer Graphics. Geometric Modeling. Page 1. Copyright Gotsman, Elber, Barequet, Karni, Sheffer Computer Science - Technion. An Example.

Mocap in a 3D Pipeline

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

Maya 2014 Basic Animation & The Graph Editor

Chapter 1. Introduction. 1.1 The Challenge of Computer Generated Postures

IMD4003 3D Computer Animation

CATIA V5 Tutorials. Mechanism Design & Animation. Release 18. Nader G. Zamani. University of Windsor. Jonathan M. Weaver. University of Detroit Mercy

Procedural Animation. An introduction

2.5 Physically-based Animation

A Short Introduction to Computer Graphics

Motion Capture Technologies. Jessica Hodgins

We can display an object on a monitor screen in three different computer-model forms: Wireframe model Surface Model Solid model

INTRODUCTION TO RENDERING TECHNIQUES

Character Animation Tutorial

Computer Animation and Visualisation. Lecture 1. Introduction

Blender Notes. Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 9 The Game Engine

Motion Retargetting and Transition in Different Articulated Figures

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

Fundamentals of Computer Animation

COMP Visualization. Lecture 15 Animation

Anime Studio Debut vs. Pro

Animations in Creo 3.0

Mathematical Modeling and Engineering Problem Solving

Project 2: Character Animation Due Date: Friday, March 10th, 11:59 PM

Computers in Film Making

Introduction to Computer Graphics

Time Domain and Frequency Domain Techniques For Multi Shaker Time Waveform Replication

Geometric Constraints

Chapter 9- Animation Basics

Modelling 3D Avatar for Virtual Try on

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

Course Overview. CSCI 480 Computer Graphics Lecture 1. Administrative Issues Modeling Animation Rendering OpenGL Programming [Angel Ch.

Digital 3D Animation

CS 4620 Practicum Programming Assignment 6 Animation

Essential Mathematics for Computer Graphics fast

Our One-Year 3D Animation Program is a comprehensive training in 3D using Alias

DESIGN, IMPLEMENTATION, AND COOPERATIVE COEVOLUTION OF AN AUTONOMOUS/TELEOPERATED CONTROL SYSTEM FOR A SERPENTINE ROBOTIC MANIPULATOR

FACIAL RIGGING FOR 3D CHARACTER

Dynamics of Multibody Systems: Conventional and Graph-Theoretic Approaches

Math for Game Programmers: Dual Numbers. Gino van den Bergen

SOFA an Open Source Framework for Medical Simulation

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

CARTOON BUILDER. Character animation the art of. Creating animated characters with Blender KNOW-HOW. Pulling Strings

Introduction Computer stuff Pixels Line Drawing. Video Game World 2D 3D Puzzle Characters Camera Time steps

3. Interpolation. Closing the Gaps of Discretization... Beyond Polynomials

The Fundamental Principles of Animation

Dynamics. Basilio Bona. DAUIN-Politecnico di Torino. Basilio Bona (DAUIN-Politecnico di Torino) Dynamics / 30

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

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

CHAPTER 6 TEXTURE ANIMATION

Tutorial 9: Skeletal Animation

Mechanics lecture 7 Moment of a force, torque, equilibrium of a body

Short Presentation. Topic: Locomotion

Outline. srgb DX9, DX10, XBox 360. Tone Mapping. Motion Blur

SkillsUSA 2014 Contest Projects 3-D Visualization and Animation

Design of a modular character animation tool

Fundamentals of Computer Animation

Character Animation from 2D Pictures and 3D Motion Data ALEXANDER HORNUNG, ELLEN DEKKERS, and LEIF KOBBELT RWTH-Aachen University

An Interactive method to control Computer Animation in an intuitive way.

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

Character Creation You can customize a character s look using Mixamo Fuse:

Lecture L2 - Degrees of Freedom and Constraints, Rectilinear Motion

Adding Animation With Cinema 4D XL

3D Computer Animation (Msc CAGTA) Report

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

The Animation Production Process. by Randy Gossman

CAD and Creativity. Contents

Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

CS408 Animation Software Design Sample Exam Questions (Second Half)

Transcription:

animation 1

animation shape specification as a function of time 2

animation representation many ways to represent changes with time intent artistic motion physically-plausible motion efficiency typically not a major problem control most algorithms concerned with this 3

animation editing different techniques for different processes key-framing describe key poses, interpolate the rest man-made process: laborious but artistic good for characters procedural animation motion expressed algorithmically good for small secondary motion or special effects e.g. clock animation 4

animation editing different techniques for different processes motion capture reproducing performances good for character, but requires lots of hand-tuning physically-based simulation assign physical properties simulate physics realistic, but difficult to set up and control style 5

principles of animation classic artistic choices in hand-drawn animation now used to describe computer animation non-technical description can't build algorithms on but useful to think about what the goals are 6

principles of animation squash-and-stretch [Lassiter, 1987] 7

principles of animation squash-and-stretch slow motion fast motion fast motion w/ s.s. [Lassiter, 1987] 8

principles of animation timing [Lassiter, 1987] 9

principles of animation anticipation [Lassiter, 1987] 10

movie time luxo jr. 11

how animation works? flip very fast a set of fixed images perceived as motion by our visual system how many images per second? shoudl be above flicker fusion: > 60 Hz NTSC TV signal: 60 half-frames per second movies: 24fps repeated 3 times 12

motion blur avoid aliasing over time equiv. to color "averages" to remove "jaggies" [Cook et al., 1984] 13

representing changes one frame-at-a-time inefficient and cumbersome key-pose animation define key poses interpolate in the middle 14

key-frame animation used in 2D hand-drawn animation head animators define key poses in-betweeners define intermediate poses same conceptual framework animator defines key poses computer interpolates intermediate poses 15

key-frame animation [Lassiter, 1987] 16

key-frame animation how to define interpolating function choose smooth curve formulation: splines interpolation is not rock-solid [Lassiter, 1987] 17

key-frame animation feedback comes in various forms animation playback parameter curve ghosting 18

key-frame animation what to interpolate? shapes are defined by control points too many controls for animation purposes express deformation with meaningful parameters deformation: changes in shape degrees of freedom modeling: number of control points animation: parameters of deformations ui: parameters of manipulators use smallest number of degrees of freedom 19

deformation examples rigid body transformation translation/rotation shape is unchanged P = M P modeling representation move all the control points: deformation/animation transformation translation + rotation vector: n 3 6 DOFs DOFs 20

deformation examples deformations change shape introduce different functions limits on the type of deformation P = f(p,{ }) α i 21

deformation examples bend 22

deformation examples twist 23

deformation examples using a lattice of control points key idea: size of lattice is smaller than model 24

complex deformations complex deformation by function composition no unified description so apply one after the other = ( (P)) P f 1 f 2 25

complex deformations bend + twist 26

deformations and control points should we deform control points or the surface? in general, deforming control points is wrong cannot prove that the surface is equivalent in practice, deforming control points is ok control mesh is tessellated enough many useful transforms are well-behaved 27

deformations for characters often combination of lots of deformations specialized deformations mesh skinning: body deformation blend shapes: face deformation 28

mesh skinning deform surface around a skeleton [Domine'/NVIDIA] 29

mesh skinning concepts based on skin/bone interactions [Fedkiw et al.] 30

mesh skinning every bone has a transformation: every bone-vertex has a weight: user provided, often zeros for most pairs typically not zero only for close enough "bones" deformation is weighted average of positions transformed by every bone weighted by the vertex weight p i = j M j w ij w ij M j p i 31

mesh skinning deformation often defined for a rest pose positions are defined in model space reference matrices for model-to-bone transform p i = j w ij M j M 1 ref j p i normals use inverse-transpose formulation 32

mesh skinning solution for body deformation efficient to compute hardware acceleration available good control but hard to set up proper weights often used in games as-is used in movies as part of more complex set-ups 33

mesh skinning issues surface collapse around joints or for strong twists hard to fix cannot be fixed by tweaking weights [Lewis et al., 2001] 34

mesh skinning - defining weights often very time consuming: active research [James and Twigg, 2005] 35

mesh skinning - efficiency hard to use, but really fast implementations (Project Page) [James and Twigg, 2005] 36

blend shapes interpolate set of meshes [3DMax docs/discreet] 37

blend shapes user provides a set of meshes with same topology final mesh is weighted sum of base meshes weights have to sum to 1 p i j = = 1 w j p ji j w j 38

blend shapes solution for face deformation efficient to compute albeit increase memory usage great control but only works for small deformation cannot produce "novel" shapes often used in games 39

interpolating deformations just interpolate deformation parameters translation: position rotation: quaternions bending/twisting: angle skinning: skeleton translation/rotation blending: blend weights 40

interpolating translations linearly blend the translation keys for linear, f v(0.5) is the midpoint between the keys v(t) = (1 f(t)) v 0 + f(t) v 1 define a spline passing by the translation values additional controls define speed and acceleration 41

interpolating rotations how many degrees of freedom do rotations have 3, 1 for angle and 2 for direction what is a good representation for rotation? matrices Euler angles quaternions 42

interpolating rotations using matrices is problematic M(t) = (1 f(t)) + f(t) M 0 M 1 for linear, f M(0.5) may not be a rotation M 0 M 1 90 x e.g., is identity, is rotation about M(t) is not a rotation, since MM T is not I 1 0 0 1 0 0 M(0.5) = 0 1 0 0 0 1 = 0 0 1 0 1 0 1 0 0 0 0.5 0.5 0 0.5 0.5 43

interpolating rotations Euler angles rotation around 3 different axes can represent any rotation interpolation is unnatural 90 around Z then Y = 120 around (1,1,1) 30 around Z then Y 40 around (1,1,1) [Hoffmann, docs-hoffmann.de] 44

interpolating rotations gimbal lock may lock degrees of freedom when interpolating [Hoffmann, docs-hoffmann.de] 45

interpolating rotations matrices: incorrect rotation Euler angles: unnatural and gimbal lock quaternions: nice mathematical framework won't cover in depth intuition: interpolate rotation as point on sphere [adapted from MIT course] 46

providing deformation parameters kinematics provide transformation parameters directly hand-editing forward kinematics inverse kinematics motion capture dynamics solve physics equations of motion 47

forward kinematics artists define transformation parameters directly hierarchical transformations used for bone structures in character animation e.g. skeletons or robots hard to define what happens at end of chains e.g. which angles should the leg be to have the foot touch the floor? done by trial and error 48

forward kinematics position at end of the chain p = cos + cos( + ) x l 0 θ 0 l 1 θ 0 θ 1 p = sin + sin( + ) y l 0 θ 0 l 1 θ 0 θ 1 49

inverse kinematics specify directly the position at the end of chain easier to control motion, less trial and error joint angles solutions by inverting previous eqns. 50

inverse kinematics more bones results in under-constrained system infinite number of solutions which solution to pick? impose constraints: minimize energy function based on plausible motion 51

inverse kinematics or try to capture "styles" by learning from data sets [Grochow et al., 2004] 52

motion capture record motion and play it back how to record: motion capture systems how to apply motion to digital characters motion editing motion retargeting 53

motion capture usage heavily in games, a bit in movies not very expressive, but higher expectation (c) Sony (c) Fox 54

motion capture systems mechanical optical [(c) Animazoo] [Popovic] 55

motion capture editing motion capture generates too much raw data how to edit it? try to fit with lower DOFs models motion retargeting capture from actor A, but apply to actor B how to do this in a believable manner? clean up motion noise present in data / too little DOFs how to clean it up? often just starting point for manual animation 56

kinematics vs. dynamics kinematics: specify parameters directly dynamics: solve the equations of motion physically based animation rigid body dynamics solve rigid body equations collision detection doable in many cases more complex cases almost impossible cannot model physics accurately enough simplify for good-enough solutions 57

dynamics animation from dynamics is accurate since we are simulating physics at the price of less artistic freedom cartoon physics control-vs-correctness triage often hard interests in mixing dynamics with kinematics open research issue 58

dynamics simulating simple objects [Fedkiw et al.] 59

dynamics simulating complex situations [Fedkiw et al.] 60

dynamics simulating complex objects [Fedkiw et al.] 61

controlling dynamics basic principle: cheat where you can [Popovic et al., 2003] 62

movie time for the birds 63

natural phenomena often done by physical simulation looks like computational physics simulation domain choose based on phenomena to define e.g. smoke uses volumetric adaptive grids e.g. cloth uses points/springs system simulation algorithms very different ones depending on simulation domain lots of open research Fedkiw site 64

natural phenomena [Fedkiw et al.] 65

natural phenomena [Fedkiw et al.] 66

natural phenomena [Fedkiw et al.] 67

natural phenomena [Fedkiw et al.] 68

particle system collection of particles simple, since it is just simulating point dynamics used heavily in special effects complex phenomena represented as point/force collections simplest dynamics formulation point properties dynamics: position, velocity, acceleration varying properties: color, temperature, lifespan constant properties: mass. lifetime 69

particle system for each frame create new random particles where to create? along point/line/surface artistic control delete expired particles random/lifespan/collision update particles based on dynamics render particles 70

particle dynamics Newton equation dp d 2 p v = a = F(p,v, t) = ma dt dt 2 find position at time t given position, velocity, and acceleration at time initial value problem: use Euler method more efficient methods exist 0 p(0) = p 0 v(0) = v 0 a(0) = a 0 v(t + Δt) = v(t) + a(t)δt p(t + Δt) = p(t) + v(t)δt + a(t)δt2 2 71

particle systems example [Reeves, 1983] 72

particle systems example [Reeves, 1983] 73

particle systems example [Reeves, 1983] 74