Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computer Animation What is Animation? What is Simulation?

Similar presentations


Presentation on theme: "Computer Animation What is Animation? What is Simulation?"— Presentation transcript:

1 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

2 Outline Design of Animation Sequences Principles of Animation
Keyframe Animation Articulated Figures

3 Design of Animation Sequences
Animation sequence is designed with the following steps Storyboard layout: outline of the action. Consist of a set of rough sketches or a list of the basic idea for the motion. Object definitions: is given for each participant in the action. Objects can be defined in terms of basic shapes. Associated movements for each object are specified along with the shape. Key-frame specifications: detailed drawing of a scene at a certain time in the animation sequence. Some key frames are chosen at extreme positions in action; others are spaced so that the time interval between key frames is not too great. More key frames are specified for intricate motions than for simple, slowly varying motions. Generation of in-between frames: In-betweens are the intermediate frames between the key frames. Film requires 24 frames/sec. time intervals for motion are set so that there are 3-5 in-betweens for each pair of key frames. For a 1 min film sequence with no duplication 1440 frames are needed. With 5 in-betweens for each pair of key frames 288 key frames are required. If motion is not complicated we can space the key frames a little farther apart.

4 Animation Traditional 2D animation Origins in late 1920s Flat shading
Illusion of 3D produced by fluidity of characters, use of perspective, motion of “virtual camera” Disney animators pioneered major techniques “Squash and stretch” Secondary action Appeal

5 Principle of Traditional Animation – Disney –
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

6 Squash and Stretch Stretch Squash

7 Slow In and Out

8 Anticipation

9 Advantages of Computer Animation
Eliminates requirements of building models No restriction on camera movement Easy inclusion of shading models Can introduce physical models

10 Animation Taxonomy Representational animation Procedural animation
Rigid objects Single, unchanging model for each object Articulated objects Rigid subobjects, connected at joints Motions generally revolute Soft objects Model is deformed Procedural animation Stochastic animation Behavioral animation

11 Computer Animation Animation Pipeline 3D modeling Motion specification
Motion simulation Shading, lighting, & rendering Postprocessing

12 Outline Principles of Animation Keyframe Animation Articulated Figures

13 Keyframe Animation Define Character Poses at Specific Time Steps Called “Keyframes”

14 Keyframe Animation Interpolate Variables Describing Keyframes to Determine Poses for Character in between

15 Motion Control: Keyframing
In computer graphics animation, keyframe -> key parameter. Therefore selection of the parameter becomes critical in defining appropriate motion. Interpolating endpoints Interpolating angle

16 Key-frame systems Specialized animation languages designed to generate the in-betweens from the user-specified key frames Each object in the scene is defined as a set of rigid bodies connected at the joints and with a limited number of degrees of freedom. Degrees of freedom (DOF) Number of independent variables necessary to specify the state of the structure

17 Parameterized systems
Allow object-motion characteristics to be specified as part of the object definitions. The adjustable parameters control such object characteristics as degrees of freedom, motion limitations and allowable shape changes

18 Scripting systems Allow object specifications and animation sequences to be defined as a user-input script. From the script, a library of various objects & motions can be constructed.

19 Motion control of rigid objects Parameterization of position
Orientation Rigid Objects Articulated Objects Soft Objects

20 Inbetweening Linear Interpolation Usually not enough continuity

21 Key-frame Systems Motion paths can be given with a kinematic description as a set of spline curves, or the motions can be physically based by specifying the forces acting on the objects to be animated. For complex scenes, we can separate the frames into individual components or objects. Given the animation paths, we can interpolate the positions of individual objects between any two times. With complex object transformation the shapes of objects may change over time. Eg. Clothes, facial features, magnified detail, evolving shapes, exploding or disintegrating objects, transforming one object to another. If all surfaces are described with polygon meshes, then the number of edges per polygon can change from one frame to next. Thus the total number of line segments can be different in different frames.

22 Key-frame Systems Morphing: transforming object shapes from one form to another Preprocessing rules for equalizing key frames in terms of either number of edges or number of vertices. Equalizing edge count. Lk & Lk+1 denote number of line segments in 2 consecutive frames. Lmax=max(Lk, Lk+1) & Lmin=min(Lk, Lk+1) Ne= Lmax(mod Lmin) & Ns= int(Lmax/Lmin) Preprocessing is accomplished by Dividing Ne edges of keyframemin into Ns+1 sections Dividing the remaining lines of keyframemin into Ns sections Example: Lk=15& Lk+1 =11. Then divide 4 lines of keyframek+1 into 2 sections each. The remaining lines of keyframek+1 are left intact.

23 Equalizing vertex count.
Vk & Vk+1 denote number of vertices in 2 consecutive frames. Vmax=max(Vk, Vk+1) & Vmin=min(Vk, Vk+1) Nls= (Vmax-1)mod (Vmin-1) & NP= int((Vmax-1)/(Vmin-1)) Preprocessing is accomplished by Adding NP points to Nls line sections of keyframemin Adding NP-1 points to the remaining edges of keyframemin Example: Vk=3& Vk+1 =4. Both Nls and NP are 1, so add one point to one edge of keyframek. No points would be added to the remaining lines of keyframek+1

24 Key-frame Systems Morphing: transforming object shapes from one form to another Simulating acceleration Curve fitting techniques are often used to specify the animation paths between key frames. Adjust time spacing for the in-betweens In-between spacing of ∆T = (t2-t1) / (n+1) for n in-betweens for key frames at times t1 & t2 Time for any in-between is tBj = t1 + j ∆T, j=1,…, n

25 Inbetweening Spline Interpolation Maybe good enough

26 Inbetweening Spline Interpolation Maybe good enough
May not follow physical laws

27 Inbetweening Spline Interpolation Maybe good enough
May not follow physical laws

28 Inbetweening Inverse Kinematics or Dynamics

29 Outline Principles of Animation Keyframe Animation Articulated Figures
Articulated structure Figure that consists of a series of rigid links connected at joints. Joints may be: Revolute (or rotary): only angles can vary Prismatic: sliding joint where length of link can vary

30 Articulated Figures Character Poses Described by Set of Rigid Bodies Connected by “Joints” Base Arm Hand Scene Graph

31 Articulated Figures Well-Suited for Humanoid Characters

32 Articulated Figures Joints Provide Handles for Moving Articulated Figure

33 Inbetweening Compute Joint Angles between Keyframes
consider the length constancy Right Wrong

34 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

35 Example: Walk Cycle Hip Joint Orientation:

36 Example: Walk Cycle Knee Joint Orientation:

37 Example: Walk Cycle Ankle Joint Orientation:

38 Challenge of Animation
Temporal Aliasing Motion blur

39 Temporal Ailasing Artifacts due to Limited Temporal Resolution
Strobing Flickering

40 Temporal Ailasing Artifacts due to Limited Temporal Resolution
Strobing Flickering

41 Temporal Ailasing Artifacts due to Limited Temporal Resolution
Strobing Flickering

42 Temporal Ailasing Artifacts due to Limited Temporal Resolution
Strobing Flickering

43 Motion Blur Composite Weighted Images of Adjacent Frames
Remove parts of signal under-sampled in time

44 Summary Animation Requires ... Modeling Scripting Inbetweening
Lighting, shading Rendering Image processing

45 Motion specifications
Direct Explicitly give rotation angles & translation vectors Apply geometric transformations or use approximating equations to specify motions eg. sine curve Goal directed systems Specify motion that are to take place in general terms that abstractly describe the actions Determine specific motion parameters given the goals of the animation We could state that the object should walk or run or pick up another object. Input directives are then interpreted in terms of component motions that will accomplish the task. Human motions can be defined as a hierarchical structure of sub-motions for the torso, limbs etc. Kinematics Specification or study of motion independent of the underlying forces that produce the motion. It includes all geometrical and time related properties of the motion Consider only motion Determined by positions, velocities, accelerations Dynamics Consider underlying forces Compute motion from initial conditions and physics

46 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

47 ALL THE BEST FOR YOUR EXAMS

48 Example: 2-Link Structure
Two Links Connected by Rotational Joints “End-Effector” X=(x, y) (0, 0)

49 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))

50 Forward Kinematics Joint Motions can be Specified by Spline Curves
X=(x, y) (0, 0)

51 Forward Kinematics Joint Motions can be Specified by Initial Conditions and Velocities X=(x, y) (0, 0)

52 Example: 2-Link Structure
What If Animator Knows Position of “End-Effector” “End-Effector” X=(x, y) (0, 0)

53 Inverse Kinematics Animator Specifies End-Effector Positions: X
Computer Finds Joint Angles: Q1 and Q2 X=(x, y) (0, 0)

54 Inverse Kinematics End-Effector Postions can be Specified by Spline Curves X=(x, y) (0, 0)

55 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

56 Inverse Kinematics Solution for More Complex Structures
Find best solution (e.g., minimize energy in motion) Non-linear optimization X=(x, y) (0, 0)

57 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

58

59 Animating Articulated Structures
State vector Vector of all possible configurations of an articulated structure. A set of independent parameters defining the positions and orientations, and rotations of all joints constituting the figure forms a basis of the state space. The dimension of the state space = DOF of structure End effector Free end of the chain of links

60 Forward vs. Inverse Kinematics
Forward Kinematics: The motion of all joints is specified explicitly by the animator. The motion of the end effector is the accumulation of all motions that lead to the end effector. Inverse Kinematics: The animator defines the position of end effectors only. Inverse kinematics solves for the position and the orientation of all joints in the link hierarchy that lead to the end effector.

61 A Simple 2-Link Articulated Structure
Forward: Inverse:

62 A Simple 2-Link Articulated Structure: Two Solutions

63 Representing Articulated Figures: Denavit-Hartenberg (DH) Notation

64 Representing Articulated Figures: Denavit-Hartenberg (DH) Notation

65 Representing Articulated Figures: Denavit-Hartenberg (DH) Notation

66 Representing Articulated Figures: Denavit-Hartenberg (DH) Notation
All frame-to-frame transformations can be concatenated to form a single transformation that links frame 0 to frame N:

67 The Jacobian

68 The Jacobian: Why is it Useful for Inverse Kinematics?
The inverse kinematics problem is stated: For complex articulated figures, this is too complex to solve for q analytically. The problem can be solved incrementally by localizing about the current state vector and inverting the Jacobian to give:

69 The Jacobian: Why is it Useful for Inverse Kinematics?

70 The Jacobian: How do you Construct it?

71 The Jacobian: How do you Construct it?

72 Application of Inverse Kinematics to a Skeleton
Root node Base node Open node End node

73 Simple Legged Animation Using Forward Kinematics
Upper leg (hip rotate) Hip Hip rotate Upper Leg Knee Lower leg (knee rotate) Lower Leg Hip rotate + knee rotate Ankle Foot Foot (ankle rotate)

74 Simple Legged Animation Hip Rotation Script

75 Simple Legged Animation Knee Rotation Script

76 Simple Legged Animation Ankle Rotation Script

77 Simple Legged Animation Resulting Animation

78 Soft Object Animation The Basic Approaches
Deforming the polygonal representation Move the vertices defining the polygons as a function of time Connectivity among vertices must be taken into account Magnitude of deformation must be relatively small (or “simple”) with respect to vertex spacing Can cause polygon “aliasing” problems Most noticeable when planar or near planar regions, represented with sparse vertices, are deformed Deforming the parametric representation Accomplished by deforming the control points Object still “well defined”

79 Nonlinear Global Deformation Barr 1984
Barr’s notation: Deformed vertex Undeformed vertex Taper along z axis: Axial twisting:

80 Nonlinear Global Deformation An Example
Undeformed Taper Twist Bend

81 Free Form Deformation (Sederburg 1986)
A tricubic Bezier hyperpatch is defined: An FFD block is a rectangular lattice of l x m x n Bezier hyperpatches, consisting of an array of control points. U S T

82 Free Form Deformation The Algorithm
1. Determine the positions of the vertices in lattice space. 2. Deform the FFD block. This is accomplished by moving the control points. The control points are initially located at: 3. Determine the deformed position of the vertices - Given the lattice space coordinates of the vertices, find the relevant hyperpatch - convert (s,t,u) to the local parameter coordinate of the hyperpatch, (u,v,w) - Evaluate the position using:

83 Animating the Deformation: Factor Curves
Extension of the concept of weighted transformation introduced by Barr Animator breaks down the problem of animating a deformation into two components: A set of transformations that can accomplish the range of deformation required along with a parameterization of these transformations A set of factor curves in both space and time that modify the parameters of the deforming transformation according to where and when they are applied

84 Factor Curves: An Example

85 Factor Curves: An Example: the Animated Spoon

86

87 Overview Kinematics Dynamics Consider only motion
Determined by positions, velocities, accelerations Dynamics Consider underlying forces Compute motion from initial conditions and physics

88 Dynamics Simulation of Physics Insures Realism of Motion

89 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

90 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:

91 Space Time Constraints
Discretize Time Steps

92 Space Time Constraints
Solve with Iterative Optimization Methods

93 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

94 Space Time Constraints
Adapting Motion Original Jump Heavier Base

95 Space Time Constraints
Adapting Motion Hurdle

96 Space Time Constraints
Adapting Motion Ski Jump

97 Space Time Constraints
Editing Motion Original Adapted

98 Space Time Constraints
Morphing Motion The female character morphs into a smaller character during her spine

99 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

100 Dynamics Other Physical Simulations Rigid bodies Soft bodies Cloth
Liquids Gases etc. Cloth Hot Gases

101 Summary Kinematics Dynamics Forward kinematics Inverse 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


Download ppt "Computer Animation What is Animation? What is Simulation?"

Similar presentations


Ads by Google