Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 26 and 27 Animation Overview

Similar presentations


Presentation on theme: "Lecture 26 and 27 Animation Overview"— Presentation transcript:

1 Lecture 26 and 27 Animation Overview
CSc4820/6820 Computer Graphics Algorithms Ying Zhu Georgia State University Lecture 26 and 27 Animation Overview

2 Outline What is animation? A little history Types of animation systems
Type of motion control systems

3 What is animation? Computer animation can be produced by using a rendering machine to produce successive frames wherein some aspect of the image is varied. Simple animation: moving the camera or the relative motion of rigid bodies in the scene. More sophisticated computer animation: move the camera and/or the objects in more interesting ways, curved paths, and/or physics based animation. Animation is also used in visualization to show the time dependent behavior of complex systems.

4 What is animation? In computer animation, any value that can be changed can be animated. An object’s position and orientation are obvious candidates for animation. Other values can be animated too: Shape, shading parameters, texture coordinates, light source parameters, camera parameters

5 Background: Perception
The reason we’re able to do animation is because our perceptual system is easily tricked 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

6 Motion Blur Virtual camera in computer graphics does not automatically generate motion blur results Without motion blur, 30 fps results in fast moving objects that look like they are hopping 60 fps is usually a better choice but are harder to achieve.

7 Traditional animation techniques
Key frame animation: More experienced animators only draw the key frames in the animated sequence Assistant animators or a computer program draw additional animation frames "in between" the key frames Majority of the animations are key frame animations Stop motion animation: shooting a single frame, stopping the camera to move the object a little bit, taking another photograph and repeat When the film runs continuously, it appears that the objects move by themselves . Examples: King Kong, Mighty Joe Young, Chicken Run

8 2D animation techniques
GIF (Graphics Interchange Format) The GIF89a feature of storing multiple images in one file, accompanied by control data, is used extensively on the web to produce simple animations. Adobe’s (formerly Macromedia’s) Flash is a graphics animation program Occur most commonly in animated advertisements on web pages and rich-media web sites

9 Adobe Flash

10 MS Expression Blend MS Expression Blend 2

11 Animation History 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 The multiplane allowed the animator to re-use the same background, foreground, or any elements not in motion, saving hours of labor. More about the history of animation:

12 Types of Animation Systems
Scripting Systems: The animator writes a script in the animation language. (model "ball" ((squash '((1 0.5 L) ( L))) (make-ball (squash))) Actor: a complex object which has its own animation rules. In animating a bicycle, the wheels will rotate in their own coordinate system and the animator doesn't have to worry about this detail. Actors can communicate with other actors be sending messages and so can synchronize their movements.

13 Types of Animation System
Procedural Animation: define movement over time. These might be procedures that use the laws of physics (physically - based modeling) or animator generated methods. Throwing a ball which hits another object and causes the second object to move.

14 Types of Animation Systems
Stochastic Animation: uses stochastic processes to control groups of objects, such as in particle systems. Fireworks, fire, water falls, etc. Behavioral Animation: objects or "actors" are given rules about how they react to their environment. schools of fish or flocks of birds

15 Motion Control A major part of animation is motion control.
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

16 Types of Animation Control Systems
Traditional Methods Cartoons, stop motion Key framing Interpolation between frames Motion Capture Simulation

17 Key framing Key frame systems were developed by classical animators such as Walt Disney. An expert animator would design (choreograph) an animation by drawing certain intermediate frames, called key frames. Then other animators would draw the in-between frames.

18 Keyframing Steps Develop a script or story for the animation
Lay out a storyboard, that is a sequence of informal drawings that shows the form, structure, and story of the animation. Record a soundtrack Produce a detailed layout of the action. Correlate the layout with the soundtrack.

19 Keyframing Steps Create the "keyframes" of the animation. The keyframes are those where the entities to be animated are in positions such that intermediate positions can be easily inferred. Fill in the intermediate frames (called "inbetweening" or "tweening"). Make a trial "film" called a "pencil test“. Transfer the pencil test frames to sheets of acetate film, called "cels". These may have multiple planes, e.g., a static background with an animated foreground. The cels are then assembled into a sequence and filmed.

20 Pixar’s Animation Process
Development, creating the storyline Pre-production, addressing technical challenges Production: making the film Post-production: polishing the final product More information at:

21 Interpolation With computers, the animator would specify the keyframes and the computer would draw the in-between frames Many different parameters can be interpolated but care must be taken in such interpolations if the motion is to look "real". For example in the rotation of a line, the angle should be interpolated rather than the 2D position of the line endpoint.

22 Interpolation The simplest type of interpolation is linear, i.e., the computer interpolates points along a straight line. Simple interpolation techniques can only generate simple inbetweens More complicated inbetweening will require a more complicated model of animated object and simulation A better method is to use cubic splines for interpolation. Here, the animator can interactively construct the spline and then view the animation.

23 Interpolation Strengths Weaknesses Animator has exacting control
Interpolation hooks must be simple and direct Time consuming and skill intensive Difficult to reuse and adjust

24 Motion Capture

25 What is motion capture? Motion capture involves measuring an object's position and orientation in physical space, then recording that information in a computer-usable form. Objects of interest include human and non-human bodies, facial expressions, camera or light positions, and other elements in a scene. In most instances, a live subject, most likely human (but possibly and animal or puppet), is used as the source of data which is transformed into another form.

26 Motion capture (MoCap)
MoCap is used extensively in films E.g. Final Fantasy But game industry accounts for 85-90% of the total MoCap usage Almost all games use MoCap to drive character animation

27 Character animation Store a vocabulary of MoCap sequences
Game events -> MoCap library -> animation skeleton -> skin skeleton -> render skin mesh Blend MoCap sequences in real-time

28 Online MoCap Database CMU Graphics Lab Motion Capture Database

29 Two Types of Motion Capture
Offline MoCap The data is captured, stored, processed and then later applied to the computer character Real-time MoCap The motion data is captured and applied to the character simultaneously. No noticeable delay in the character’s movement

30 Motion Capture Steps Marker placement
About 40 markers for human character Marker position is often pre-defined

31 Motion Capture Steps Calibrate the cameras
To ensure that all the cameras are able to view the area used for capture Static calibration: a number of markers are placed on the floor Dynamic calibration: a stick with markers is waved around the area of capture

32 Camera calibration

33 Subject calibration Subject calibration:
Static calibration: the subject stands in a “T” position with the arms straight out Dynamic calibration: the subject do a simple motion such as walking across the room

34 Labeling MoCap equipments normally come with a companion software
Use the software to view the captured motion as a collection of markers moving over a period of time. Labeling: match a list of default marker names to the corresponding markers on the body. The software will then connect the markers to create segments.

35 Labeling

36 Ready to capture Now you are ready to capture the motion

37 Real-time MoCap with Maya
Create a 3D character with Maya Write a Maya plug-in so that Maya can communicate with MoCap software The data provided by MoCap software includes marker positions and orientations. You may have to modify the plug-in to calculate joint angles for Maya animation In the end, the MoCap data will be played on Maya in real-time.

38 Performance capture A term possibly coined by Robert Zemeckis, one of the creators of The Polar Express movie. A combination of motion capture and facial expressions capture. Actors wear the same reflective markers as in motion capture, but also special makeup to record the facial movements. The Polar Express is the first movie made solely with this process

39 MoCap Advantages The quality of the MoCap is usually better than keyframe based animation It’s generally cheaper You don’t need to hire experienced animators Once you have the equipments, it’s quite convenient and fast

40 MoCap Disadvantages You can only activate pre-recorded scripts
Need to be able to adapt the MoCap sequences to the developing game Need to produce new sequences from existing ones MoCap data is only valid for a virtual character of the same scale as the actor Retargeting problem MoCap data is often noisy and needs “cleaning” Put markers on skin may cause inaccuracy

41 MoCap data BVH (Biovision Hierarchical) is a popular format for MoCap data file BVH file is an ASCII file with two parts: a header and data section. The header section defines the hierarchy of the skeleton section The data section contains the motion data

42 BVH Header HIERARCHY ROOT Hips
{ OFFSET CHANNELS 6 Xposition Yposition Zposition Zrotation Xrotation Yrotation JOINT Chest { OFFSET CHANNELS 3 Zrotation Xrotation Yrotation JOINT Neck { OFFSET CHANNELS 3 Zrotation Xrotation Yrotation JOINT Head { OFFSET CHANNELS 3 Zrotation Xrotation Yrotation End Site { OFFSET } } }

43 BVH Header Starts with “HIERARCHY” Followed by “ROOT”
Under “ROOT” there are many “JOINT”s Each segment of the hierarchy contains some data relevant to just that segment then it recursively defines its children "OFFSET" specifies the X,Y and Z offset of the segment from its parent.

44 BVH Header "CHANNELS" keyword is followed by a number indicating the number of channels and then a list of channel types. Each channel defines a rotation or a translation The BVH file reader must keep track of the channel count and the types of channels When the motion information is parsed, this ordering will be needed to parse motion data.

45 BVH Header The header defines a hierarchy of the skeleton elements
There is a clear parent-children relationship between elements Both rotation and translation are applied to root But only rotations are applied to the subsequent elements

46 BVH Header Rotations and translations applied to a parent will also be applied to its children The rotations must be applied in the exact same sequences as defined in the header file E.g. CHANNELS 3 Zrotation Xrotation Yrotation

47 BVH Motion Data MOTION Frames: 221 Frame Time:

48 BVH Data Section Begins with the keyword "MOTION“
Followed by a line with keyword “FRAMES:” indicating the number of frames, "Frame Time:" indicates the sampling rate of the data. The rest of the file contains the actual motion data. Each line is one sample of motion data.

49 MoCap Data Manipulation
MoCap data often needs to be manipulated before use Low-level processing High-level processing

50 Low Level MoCap Data Post-processing
Noise removal Filling in gaps causes by markers going out of view Eliminating confusion when two markers become coincident in a view

51 High Level Processing Speed up and slowing down motion
Blending and time warping Aligning motion sequences Motion warping Interpolation in MoCap Constraint based approaches

52 Procedural Animation Very general term for a technique that puts more complex algorithms behind the scenes Technique attempts to consolidate artistic efforts in algorithms and heuristics Allows for optimization and physical simulation. Many games now use physics engines.

53 Physics engines Havok, one of the most powerful physics engines in game industry Character dynamics Vehicle dynamics Environment dynamics Vortex from CMLabs

54 Procedural Animation Strengths
Animation can be generated ‘on the fly’ Dynamic response to user Write-once, use-often Algorithms provide accuracy and exhaustive search that animators cannot achieve.

55 Procedural Animation Weaknesses
We’re not great at boiling human skill down to algorithms How do we move when juggling? Difficult to generate Expensive to compute Difficult to force system to generate a particular solution

56 Human Motion Simulation
Human motion simulation (Georgia Tech) How to simulate elementary movements: walking, running, jogging, diving, etc. Virtual Stuntman (UCLA) How to composite multiple movements?

57 Human Character Simulation
DI-Guy from Boston Dynamics

58 Facial Animation Facial animation links at

59 Artificial Life Flock of birds: School of fish
School of fish

60 Water, fire, and smoke Joe Stam’s work
Stable Fluids Realtime fluid dynamics for games

61 Water, fire, and smoke Ron Fedkiw’s work

62 Evolved virtual creatures
Karl Sims’ work

63 Summary What is animation? Types of animation systems
Type of motion control systems Keyframing Motion Capture Procedural animation and physics based animations

64 Readings HyperGraph: Animation

65 Reference A. Watt & F. Policarpo, 3D Games, Vol. 2, Addison-Wesley 2003 (Chapter 10) R. Parent, Computer Animation, Morgan Kaufmann 2002 (Section 6.7)

66 Next Lecture Graphics hardware and systems


Download ppt "Lecture 26 and 27 Animation Overview"

Similar presentations


Ads by Google