Animation LowLevel behaviors Overview Keyframing Motion Capture Simulation
Animation Low-Level behaviors Overview Keyframing Motion Capture Simulation Oct 16, Fall 2006 IAT 410 1
Low-Level Behaviors g Keyframing g Motion Capture g Simulation Oct 16, Fall 2006 IAT 410 2
Generating Motion g What matters? – Quality of motion appropriate for rendering style and frame rate – Controllable from UI – Controllable from AI – Personality of the animated character Oct 16, Fall 2006 IAT 410 3
Keyframe Example Oct 16, Fall 2006 IAT 410 4
Keyframing g Fine level of control g Quality of motion depends on skill of animator Oct 16, Fall 2006 IAT 410 5
Motion Capture g Natural-looking motion g Hard to generalize motions – Registration is difficult – “Weightless” according to professional animators Oct 16, Fall 2006 IAT 410 6
Motion Capture Images courtesy Microsoft Motion Capture Group Oct 16, Fall 2006 IAT 410 7
Simulation (Broadly Defined) g Physics is hard to simulate g Pseudo-physics is somewhat hard g Control is very hard g Gives Generalization + Interactivity User/ AI Desired Behavior Control Forces and Torques Model State Numerical Integrator Graphics Oct 16, Fall 2006 IAT 410 8
When to Use What Method? g Keyframing – Sprites and other simple animations – Non-human characters – Coarse collision detection g Motion Capture – Human figures – Subtle motions, long motions g Simulation – Passive simulations – When interactivity w/ motion is important Oct 16, Fall 2006 IAT 410 9
Keyframing Oct 16, Fall 2006 IAT 410 10
Keyframing Oct 16, Fall 2006 IAT 410 11
Keyframe Example Oct 16, Fall 2006 IAT 410 12
Keyframing g Fine level of control g Quality of motion depends on skill of animator Oct 16, Fall 2006 IAT 410 13
Hand Drawn Animation -- 2 D Sketches g Pencil tests g Inking g Coloring g Digitize to sprites g Oct 16, Fall 2006 IAT 410 14
Computer Animation: 2 D or 3 D g Sketches g Models and materials g Key configurations g Playback of motion or render to sprites Oct 16, Fall 2006 IAT 410 15
Keyframing g The development process: Adjust trajectory Playback motion g Parameters: – – Locations Joint angles Shape -- flexible objects Material properties Oct 16, Fall 2006 IAT 410 – Camera Motion – Lighting 16
Keyframing Interpolation g Inbetweening v 1, 2, 3 Linear 4 5 6 7, 8, 9… time v 1, 2, 3 4 5 Slow in, Slow out Oct 16, Fall 2006 6 IAT 410 7, 8, 9… time 17
Interpolation Example Oct 16, Fall 2006 IAT 410 18
Key Frames 1 2 3 Oct 16, Fall 2006 IAT 410 19
Key Frames g Timeline g 1 Oct 16, Fall 2006 2 3 3 IAT 410 1 20
Inbetweening g Frame dependent (“wrong”) slow-in/out – Iterate once per frame – This is a variant on the Infinite Impulse Response (IIR) filter: Oct 16, Fall 2006 IAT 410 21
Inbetweening g Frame-Independent (“right”) slow in/out – Compute acceleration a Time of last frame Oct 16, Fall 2006 IAT 410 Time Tend 22
Spline-driven Animation x, y = Q(u) for u: [0, 1] y x g Equal arc lengths g Equal spacing in u Oct 16, Fall 2006 IAT 410 23
Reparameterize Arc Length S= A(u) = arc length g Reparam: g Find: g Bisection search for a value of u where A(u) = S with a numerical evaluation of A(u) (Details in Watt & Watt) Oct 16, Fall 2006 IAT 410 24
Keyframing -- Constraints g Joint limits g Position limits g Inverse kinematics Oct 16, Fall 2006 IAT 410 25
Keyframing -- Constraints Oct 16, Fall 2006 IAT 410 26
Coordinate Systems Oct 16, Fall 2006 IAT 410 27
Kinematics g The study of motion without regard to the forces that cause it Draw graphics Specify fewer Degrees Of Freedom (DOF) More intuitive control of DOF Pull on hand Glue feet to ground Oct 16, Fall 2006 IAT 410 28
Inverse Kinematics Oct 16, Fall 2006 IAT 410 29
Inverse Kinematics Oct 16, Fall 2006 IAT 410 30
What makes IK Hard? g Many DOF -- non-linear transcendental equations g Redundancies – Choose a solution that is “closest” to the current configuration – Move outermost links the most – Energy minimization – Minimum time Oct 16, Fall 2006 IAT 410 31
IK Difficulties g Singularities – Equations are ill-conditioned near singularities – High state-space velocities for low Cartesian velocities g Goal of “Natural Looking” motion – Minimize jerk (3 rd derivative) Oct 16, Fall 2006 IAT 410 32
Motion Capture g What do we need to know? – X, Y, Z – Roll, Pitch, Yaw g Errors cause – Joints to come apart – Links grow/shrink – Bad contact points g Sampling Oct 16, Fall 2006 Rate and Accuracy IAT 410 33
Motion Capture g Goals: – Realistic motion – Lots of different motions (300 -1000) – Contact g Appropriate game genres – Sports – Fighting – Human characters Oct 16, Fall 2006 IAT 410 34
Applications Movies, TV Video games Performance animation Oct 16, Fall 2006 IAT 410 35
Oct 16, Fall 2006 IAT 410 36
Oct 16, Fall 2006 IAT 410 37
Plan out Shoots Carefully g Know needed actions (80 -100 takes/day) – Bridges between actions – Speed of actions – Starting/ending positions g Hire the right actor – Watch for idiosyncrasies in motion – Good match in proportions Oct 16, Fall 2006 IAT 410 38
Sensor Placement g Place markers carefully – Capture enough information – Watch for marker movement g Check data part way through shoot g Videotape everything! Oct 16, Fall 2006 IAT 410 39
Oct 16, Fall 2006 IAT 410 40
Technology g Numerous technologies g Record energy transfer – Light – Electromagnetism – Mechanical skeletons Oct 16, Fall 2006 IAT 410 41
Technology g Passive reflection – Peak Performance Tech – Hand or semi-automatically digitized – Video – Time consuming g Issues – No glossy or reflective materials – Tight clothing – Marker occlusion by props + High frames/sec Oct 16, Fall 2006 IAT 410 42
Technology g Passive reflection --Acclaim, Motion Analysis – Automatically digitized – 240 Hz – Not real-time, Correspondence – 3+ markers/body part – 2+ cameras for 3 D position data Oct 16, Fall 2006 IAT 410 43
Technology g Vicon Motion Systems – Retroreflective paint on reflectors – Lights on camera – Very high contrast markers Oct 16, Fall 2006 IAT 410 44
Technology g Active light sources -Optotrak – Automatically digitized – 256 markers – 3500 marker/sec – Real-time – Specialized cameras Oct 16, Fall 2006 IAT 410 45
Technology g Electromagnetic Transducers – Ascension Flock of Birds, etc – Polhemus Fastrak, etc g Limited range/resolution – Tethered (cables to box) – Metal in environment (treadmill, Rebar!) – No identification problem – 6 DOF Realtime – 30 -144 Hz 13 -18 markers Oct 16, Fall 2006 IAT 410 46
Technology g Exoskeleton + angle sensors – Analogous – Tethered – No identification problem – Realtime - 500 Hz – No range limit - Fit – Rigid body approximation Oct 16, Fall 2006 IAT 410 47
Technology Mechanical motion capture g Dataglove g – Low accuracy – Focused resolution Oct 16, Fall 2006 IAT 410 Monkey – – High accuracy High data rate Not realistic motion No paid actor 48
Technology g Technology issues – Resolution/range of motion – Calibration – Accuracy – Occlusion/Correspondence Oct 16, Fall 2006 IAT 410 49
Animation Issues g Style g Scaling g Generalization Oct 16, Fall 2006 IAT 410 50
Resolution g Positioning Oct 16, Fall 2006 of camera IAT 410 51
Markers, Calibration g Marker Placement – Location should move rigidly with joint – Stay away from bulging muscles, loose skin – Shoulders: Skeletal motion not closely tied to skin motion g Calibration – Zero position – Fine calibration by hand Oct 16, Fall 2006 IAT 410 52
Calibration g Finding Joint Locations – Move markers to joint centers • Assume rigid links, rotary joints g Shoulder? Oct 16, Fall 2006 IAT 410 53
Calibration g Extract best limb lengths g Use estimator to compute limb length g Minimize Oct 16, Fall 2006 or reject outliers IAT 410 54
Calibration g Example estimator: – 508 frames of walking – 6 bad frames – Collarbone to shoulder: • Hand editing: 13. 3 cm • Estimator: 13. 2 cm • Arithmetic mean: 14. 1 cm Oct 16, Fall 2006 IAT 410 55
Accuracy g Marker movement g Noise in sensor readings g Skew in measurement time g Environment restrictions g Frame rate – High frame rate allows good filtering Oct 16, Fall 2006 IAT 410 56
Camera Calibration g Internal camera parameters – Optical distortion of lens g External parameters – Position and orientation g Correlation Oct 16, Fall 2006 between multiple cameras IAT 410 57
Model-Based Techniques g Restricted search space for markers g Dynamics (velocity integration) – No infinite accelerations g Model of behavior g Model of bodies of occlusion – Objects don’t pass through each other Oct 16, Fall 2006 IAT 410 58
Scaling Animation g Contact g Movement style g Inverse kinematics Oct 16, Fall 2006 IAT 410 59
Generalizating Animation g Interpolation Motion Synthesis for Articulated Figure Wiley and Hahn g IEEE CG&A v 17#6 g Oct 16, Fall 2006 IAT 410 60
Generalizating Animation g Keyframes as constraints in a smooth deformation – Create functions by hand that warp the joint angle curves through time g Keyframe placing the ball on the racket at impact Motion Warping Witkin and Popovic, SIGGRAPH’ 95 Oct 16, Fall 2006 IAT 410 61
Motion Warping g For each joint angle curve C(t) g Cnew(t) = C(t) * A(t) + B(t) g A(t) is usually a smooth, gentle curve Oct 16, Fall 2006 IAT 410 62
Generalizating Animation g Motion Editing With Spacetime Constraints – Michael Gleicher – 1997 Symposium on Interactive 3 D Graphics Oct 16, Fall 2006 IAT 410 63
Blending Animations g Efficient Generation of Motion Transitions Using Spacetime Constraints – Rose, Guenter, Bodenheimer, Cohen – Siggraph ’ 96 – Uses dynamics to compute plausible paths – Blends these paths Oct 16, Fall 2006 IAT 410 64
Simulation g Modeling physics the real world with simple – Realism – A set of rules – Better interactivity g Objects Oct 16, Fall 2006 or Characters IAT 410 65
Passive -- No muscles or motors Active -- Internal source of energy Oct 16, Fall 2006 IAT 410 66
Equations of Motion g Water g Explosions g Rigid Oct 16, Fall 2006 body models IAT 410 67
Control Systems g Wide variety of behaviors g Transitions between behaviors g Controllable by AI or UI g Robust Oct 16, Fall 2006 IAT 410 68
Equations of Motion Oct 16, Fall 2006 IAT 410 69
Generating Motion g What matters? – Quality of motion appropriate for rendering style and frame rate – Controllable from UI – Controllable from AI – Skills of the animated character – Personality of the animated character Oct 16, Fall 2006 IAT 410 70
Keyframing g Fine level of control g Quality of motion depends on skill of animator Oct 16, Fall 2006 IAT 410 71
Motion Capture g Natural-looking motion g Hard to generalize motions – Registration is difficult g Often seems Rhythm & Hues Oct 16, Fall 2006 “weightless” – IAT 410 Bill Kroyer, 72
Simulation (Broadly Defined) g Physics is hard to simulate g Pseudo-physics is somewhat hard g Control is very hard g Gives Generalization + Interactivity User/ AI Desired Behavior Control Forces and Torques Model State Numerical Integrator Graphics Oct 16, Fall 2006 IAT 410 73
When to Use What Method? g Keyframing – Sprites and other simple animations – Non-human characters – Coarse collision detection g Motion Capture – Human figures – Subtle motions, long motions g Simulation – Passive simulations – When interactivity w/ motion is important Oct 16, Fall 2006 IAT 410 74
Integration of Technologies g Layering – Add hand/finger motion later – Facial animation g Use keyframing to modify data – Fix holes in data g Use motion capture to drive simulation Oct 16, Fall 2006 IAT 410 75
- Slides: 75