Animation CS 551 / 651 David Brogan dbrogan@cs.virginia.edu Introduction We are going to study how things move and the creation of computer graphics representations that look “good enough” Rendering is: mapping light sources and surfaces to a vector of pixel colors Animation is: mapping objects, intentions, and external forces to a vector of new object positions / orientations We will not Develop drawing skills • but we may study how others draw so we can automate the process Learn how to use Maya • but we may use Maya as a rendering tool Hone our video game or moviemaking skills • but we will study how modern animation technology contributes to video games and what elements of moviemaking artistry (timing, camera angles, etc.) must reside in animation tools Study how things move Who else does this? • Biomechanists – Physics and sensors • Artists – Intuition and mind’s eye Study how things move We’ll investigate • Human walking, running, dancing • Bicycle riding • Group behaviors • Rigid body dynamics Generate graphics that is “good enough” Who else studies this? Monet La Cathédrale de Rouen (1894) • Perceptual psychologists • Artists University of Utah Picasso The Bull (1946) Generate graphics that is “good enough” We’ll investigate • Recent perceptual literature (change blindness) • Recent computer animation experiments (faking physics) Completing the mapping Bridge gap between knowledge of how things move to how they need to be rendered • Artists use their minds and hands • Computer scientists use math and programs Traditional techniques • Keyframing (Shoemake) – Orientation reps (quaternion, euler) – Curve reps (linear, quadratic, wavelets) – Interpolation (computing arclength, Gaussian Quadrature, SLERP) • Disney artists (Johnson) • Timing / storyboarding Numerical Methods • Curve fitting (least squares) • Optimization – Simulated annealing (Numerical Recipes) – Simplex – Spacetime Constraints (Witkin & Kass) – Genetic Algorithms (Sims) – Neural Networks (Grzeszczuk) Human Motion • Motion Capture – Retargeting (Gleicher, J. Lee, Z. Popovic, Arikan) – Blending (Rose) – Abstraction (Unuma) • Walking – Biomechanics (McMahon, Ruina) – Gait Generation (Metaxas, van de Panne, Hodgins) Physical Simulation • Rigid Body – Physics for games (Hecker) – Featherstone’s Method – Constraint satisfaction • Integration – Runge-Kutta – Euler • Simplification (Chenney, Lin, Popovic) • Perception (O’Sullivan, Proffitt) Autonomous Agents • Behaviors (Thalmann, Badler, Blumberg) • Group actions (Reynolds, Brogan, Helbing) Administrivia Syllabus • Instructor/TA coordinates • Prereqs • Reading Material • Assignments • Grading & Honor Code • Topic list Instructor / TA Coordinates Professor Brogan • Olsson 217 – 982-2211 – dbrogan@cs.virginia.edu – Available in office or through email appointments Julian Dymacek • Olsson 233 • jmd7b@cs.virginia.edu Prerequisites Intro to Graphics • OpenGL skills • User interface toolkits • Appreciation for rendering equations Mathematics (familiarity with…) • Multivariate / Differential Calculus • Probability / Statistics • Linear Algebra AI (familiarity with…) Reading Material No textbook • Used Parent’s Computer Animation last time – Too general – Addresses topics I don’t care about Lots of research papers • I’ll provide background lectures • Research papers provide demonstrations Assignments Approximately five programming assignments • Spacetime Constraints • Inverse Kinematics • Motion Capture Reuse / Retarget • Rigid-body Dynamical Simulator • High-level Control Systems Assignments Approximately four homework assignments • Emphasize the fundamentals – Physical simulation – Least squares – Simulated annealing Assignments Class Participation • Due to the seminar aspect of course, participation is required – Presentation of a paper – Contribution to discussions • Three questions must be submitted before class when a paper is presented – Graded according to: bad, good, great – Submission questions can be skipped for excused absences (interviews, illness, etc.) Grading Final scale will be set upon determination of grad / undergrad ratio and class size • Emphasis is on programming assignments • There will be a final (probably no midterm) Honor Code Initial Assumption (assume this as default) • All code is 100% you – no web, no other people Relaxed Assumption • You can use the web Relaxed Assumption • You can work with others The operating assumption will be specified for each assignment Perception The only reason we’re able to have this class today is because our perceptual system is easily tricked (but it’s finicky) Modeling perception really matters for computer animation Perception Positive afterimage (persistence of vision) • the visual stimulus that remains after illumination has changed or been removed Motion blur • Persistence of vision causes an object to appear to be multiple places at once Motion Blur Virtual camera in computer graphics usually shoots with infinitely small shutter speed • No motion blur results Without motion blur, 30 fps results in fast moving objects that look like they are strobing, or hopping • Would CG instantaneous snapshots produce motion blur if played at 300 fps? What’s the rate? Playback rate • The number of samples displayed per second Sample rate • The number of different images per second Playback Rate Sample Rate TV Cartoon 30 6 TV Sitcom 30 30 (on fields) CG Lipsync on film 24 12 Perception Computer graphics rendering can rely on fourhundred years of perception research by artists • The best animators have is eighty years of Disney In 1550, after 100 years of refining the art of perspective drawing, artists were shocked to think that the geometric purity of their modeled world didn’t map to recent discoveries of the human eye. They couldn’t even imagine how cognition affected what one “saw.” 200 more years would pass. Animation timeline Persistence of vision • Thaumotrope (1800s) • Flipbook • Zoetrope (1834) • Shadow puppets pbsKids Animation timeline Photography • Muybridge (1885) • Film projector (Edison, 1891) Animation Timeline First Animation • 1896, Georges Melies, moving tables • 1900, J. Stuart Blackton, added smoke First celebrated cartoonist • Winsor McCay • Little Nemo (1911) • Gertie the Dinosaur (1914) Animation Timeline 1910, Bray and Hurd • Patented translucent cels (formerly celluloid was used, but acetate is used now) used in layers for compositing • Patented gray-scale drawings (cool!) • Patented using pegs for registration (alignment) of overlays • Patented the use of large background drawings and panning camera Bray’s Studio Produced Max Fleischer – Betty Boop Paul Terry – Terrytoons George Stallings – Tom and Jerry Walter Lantz – Woody Woodpecker 1915, Fleischer patented rotoscoping • Drawing images on cells by tracing over previously recorded live action (MoCap) 1920, color cartoons Disney Advanced animation more than anyone else • First to have sound in 1928, Steamboat Willie • First to use storyboards • First to attempt realism • Invented multiplane camera Multiplane Camera Camera is mounted above multiple planes Each plane holds an animation cel Each plane can translate freely on 3 axes What is this good for? Zooming, moving foreground characters off camera, parallax, prolonged shutter allows blurring some layers (motion blur) Stop-motion Animation Willis O’Brien – King Kong Ray Harryhausen – Mighty Joe Young Nick Park – Wallace and Grommit Tim Burton – Nightmare Before Christmas Animation Heritage 1963 – Ivan Sutherland’s (MIT) Sketchpad 1970 – Evans and Sutherland (Utah) start computer graphics program (and Co.) 1972 – Ed Catmull’s (Utah) animated hand and face (later co-founded Pixar) 1970’s – Norm Badler (Penn) Center for Modeling and Simulation and Jack Animation Heritage 1970’s – New York Institute of Technology (NYIT) produced Alvy Ray Smith (Cofounded Pixar and Lucasfilm) and Catmull 1980’s – Daniel and Nadia MagnenantThalmann (Swiss Universities) become European powerhouses Animation Heritage 1980’s – z-buffer invented, SGI founded, and Alias/Wavefront founded 1977 – Starwars 1982 – Tron (first extensive use of gfx) 1982 – Early use of particle systems (Star Trek II: The Wrath of Khan) 1984 – The Last Starfighter (look for the Cray X-MP in credits) Animation Heritage 1986 – Young Sherlock Homes (first use of synthetic character in film) 1986 – First digital wire removal (Howard the Duck) 1988 – First digital blue screen extraction (Willow) The Abyss (1989) Terminator II (1991) Casper (1995), Men in Black (1997) Animation Heritage ILM: Jurassic Park (1993), Jumangi (1995), Mars Attacks (1996), Flubber (1997), Titanic (1999) Angel Studios: Lawnmower Man (1992) PDI: Batman Returns (1995) Tippett Studio: Dragonheart (1996), Starship Troopers (1997) Disney: Beauty and the Beast (1991), Lion King (1994), Tarzan (1999) Dreamworks: Antz, Prince of Egypt Pixar: Toy Story, A Bug’s Life, Monster’s Inc.