View
220
Download
0
Embed Size (px)
Citation preview
Oct 16, Fall 2006 IAT 410 1
Animation
Low-Level behaviors OverviewKeyframingMotion CaptureSimulation
Oct 16, Fall 2006 IAT 410 3
Generating Motion
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 5
Keyframing
Fine level of control Quality of motion depends on skill of
animator
Oct 16, Fall 2006 IAT 410 6
Motion Capture
Natural-looking motion Hard to generalize motions
– Registration is difficult– “Weightless” according to professional
animators
Oct 16, Fall 2006 IAT 410 8
Simulation (Broadly Defined)
Physics is hard to simulate Pseudo-physics is somewhat hard Control is very hard Gives Generalization + Interactivity
User/AI
DesiredBehavior
Control
Forces and Torques Model
Numerical Integrator
Graphics
State
Oct 16, Fall 2006 IAT 410 9
When to Use What Method? Keyframing
– Sprites and other simple animations– Non-human characters– Coarse collision detection
Motion Capture– Human figures– Subtle motions, long motions
Simulation– Passive simulations– When interactivity w/ motion is
important
Oct 16, Fall 2006 IAT 410 13
Keyframing
Fine level of control Quality of motion depends on skill of
animator
Oct 16, Fall 2006 IAT 410 14
Hand Drawn Animation -- 2D Sketches Pencil tests Inking Coloring Digitize to
sprites
Oct 16, Fall 2006 IAT 410 15
Computer Animation: 2D or 3D
Sketches Models and
materials Key configurations Playback of
motion or render to sprites
Oct 16, Fall 2006 IAT 410 16
Keyframing
The development process:Adjust trajectoryPlayback motion
Parameters:– Locations– Joint angles– Shape -- flexible objects– Material properties
– Camera Motion– Lighting
Oct 16, Fall 2006 IAT 410 17
Keyframing Interpolation
Inbetweening
1,2,3 4 5 6 7,8,9…Linear
v
1,2,3 4 5 6 7,8,9…Slow in, Slow out
v
time
time
Oct 16, Fall 2006 IAT 410 21
Inbetweening
Frame dependent (“wrong”) slow-in/out– Iterate once per frame
– This is a variant on the Infinite Impulse Response (IIR) filter:
1,))1((
weightweight
xweightxx finalpreviousnew
10
),1()(
weight
weightxweightxx finalpreviousnew
Oct 16, Fall 2006 IAT 410 22
Inbetweening
Frame-Independent (“right”) slow in/out
– Compute acceleration a
221
00 attvxx
20 )(2
middle
middle
t
xxa
fatvv 0
vtxx f 0
Time Tendft Time of last frame
Oct 16, Fall 2006 IAT 410 23
Spline-driven Animation
x
x,y = Q(u)for u:[0,1]
Equal arc lengths Equal spacing in u
y
Oct 16, Fall 2006 IAT 410 24
Reparameterize Arc Length
S= A(u) = arc length Reparam: Find:
Bisection search for a valueof u where A(u) = S with anumerical evaluation of A(u)(Details in Watt & Watt)
))(()( 1 sAQuQ )(1 sAu
Oct 16, Fall 2006 IAT 410 25
Keyframing -- Constraints
Joint limits Position limits Inverse kinematics
Oct 16, Fall 2006 IAT 410 28
Kinematics 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 31
What makes IK Hard?
Many DOF -- non-linear transcendental equations
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 32
IK Difficulties
Singularities– Equations are ill-conditioned near
singularities– High state-space velocities for low
Cartesian velocities Goal of “Natural Looking”
motion– Minimize jerk (3rd derivative)
Oct 16, Fall 2006 IAT 410 33
Motion Capture
What do we need to know?– X, Y, Z– Roll, Pitch, Yaw
Errors cause– Joints to come apart– Links grow/shrink– Bad contact points
Sampling Rate and Accuracy
Oct 16, Fall 2006 IAT 410 34
Motion Capture
Goals:– Realistic motion– Lots of different motions (300-1000)– Contact
Appropriate game genres– Sports– Fighting– Human characters
Oct 16, Fall 2006 IAT 410 38
Plan out Shoots Carefully
Know needed actions (80-100 takes/day)– Bridges between actions– Speed of actions– Starting/ending positions
Hire the right actor– Watch for idiosyncrasies in motion– Good match in proportions
Oct 16, Fall 2006 IAT 410 39
Sensor Placement
Place markers carefully– Capture enough information– Watch for marker movement
Check data part way through shoot Videotape everything!
Oct 16, Fall 2006 IAT 410 41
Technology
Numerous technologies Record energy transfer
– Light– Electromagnetism– Mechanical skeletons
Oct 16, Fall 2006 IAT 410 42
Technology Passive reflection – Peak Performance
Tech– Hand or semi-automatically digitized– Video– Time consuming
Issues– No glossy or reflective
materials– Tight clothing– Marker occlusion by props+High frames/sec
Oct 16, Fall 2006 IAT 410 43
Technology Passive reflection --Acclaim, Motion
Analysis– Automatically digitized– 240Hz– Not real-time, Correspondence– 3+ markers/body part– 2+ cameras for 3D position data
Oct 16, Fall 2006 IAT 410 44
Technology
Vicon Motion Systems– Retroreflective paint on
reflectors– Lights on camera– Very high contrast markers
Oct 16, Fall 2006 IAT 410 45
Technology
Active light sources -- Optotrak– Automatically digitized– 256 markers– 3500 marker/sec– Real-time– Specialized cameras
Oct 16, Fall 2006 IAT 410 46
Technology Electromagnetic Transducers
– Ascension Flock of Birds, etc– Polhemus Fastrak, etc
Limited range/resolution– Tethered (cables to box)– Metal in environment (treadmill,
Rebar!)– No identification problem– 6DOF Realtime– 30-144 Hz 13-18 markers
Oct 16, Fall 2006 IAT 410 47
Technology
Exoskeleton + angle sensors– Analogous
– Tethered– No identification problem– Realtime - 500Hz– No range limit - Fit– Rigid body approximation
Oct 16, Fall 2006 IAT 410 48
Technology
Dataglove– Low accuracy– Focused resolution
Monkey– High accuracy– High data rate– Not realistic
motion– No paid actor
Mechanical motion capture
Oct 16, Fall 2006 IAT 410 49
Technology
Technology issues– Resolution/range of motion– Calibration– Accuracy– Occlusion/Correspondence
Oct 16, Fall 2006 IAT 410 52
Markers, Calibration Marker Placement
– Location should move rigidly with joint– Stay away from bulging muscles, loose skin– Shoulders: Skeletal motion not closely tied to skin
motion Calibration
– Zero position– Fine calibration by hand
Oct 16, Fall 2006 IAT 410 53
Calibration
Finding Joint Locations– Move markers to joint centers
• Assume rigid links, rotary joints
Shoulder?
Oct 16, Fall 2006 IAT 410 54
Calibration
Extract best limb lengths Use estimator to compute limb
length
Minimize or reject outliers
Oct 16, Fall 2006 IAT 410 55
Calibration
Example estimator:– 508 frames of walking– 6 bad frames– Collarbone to shoulder:
• Hand editing: 13.3cm• Estimator: 13.2cm• Arithmetic mean: 14.1cm
Oct 16, Fall 2006 IAT 410 56
Accuracy
Marker movement Noise in sensor readings Skew in measurement time Environment restrictions Frame rate
– High frame rate allows good filtering
Oct 16, Fall 2006 IAT 410 57
Camera Calibration
Internal camera parameters– Optical distortion of lens
External parameters– Position and orientation
Correlation between multiple cameras
Oct 16, Fall 2006 IAT 410 58
Model-Based Techniques
Restricted search space for markers
Dynamics (velocity integration) – No infinite accelerations
Model of behavior Model of bodies of occlusion
– Objects don’t pass through each other
Oct 16, Fall 2006 IAT 410 60
Generalizating Animation
Interpolation Synthesis for Articulated Figure Motion
Wiley and Hahn IEEE CG&A v17#6
Oct 16, Fall 2006 IAT 410 61
Generalizating Animation Keyframes as constraints in a smooth
deformation– Create functions by hand
that warp the joint angle curves through time
Keyframe placing the ballon the racket at impact
Motion WarpingWitkin and Popovic, SIGGRAPH’95
Oct 16, Fall 2006 IAT 410 62
Motion Warping
For each joint angle curve C(t) Cnew(t) = C(t) * A(t) + B(t) A(t) is usually a smooth, gentle curve
Oct 16, Fall 2006 IAT 410 63
Generalizating Animation Motion Editing With Spacetime
Constraints– Michael Gleicher– 1997 Symposium on Interactive 3D
Graphics
Oct 16, Fall 2006 IAT 410 64
Blending Animations 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 65
Simulation
Modeling the real world with simple physics– Realism– A set of rules– Better interactivity
Objects or Characters
Oct 16, Fall 2006 IAT 410 68
Control Systems
Wide variety of behaviors Transitions between behaviors Controllable by AI or UI Robust
Oct 16, Fall 2006 IAT 410 70
Generating Motion
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 71
Keyframing
Fine level of control Quality of motion depends on skill of
animator
Oct 16, Fall 2006 IAT 410 72
Motion Capture
Natural-looking motion Hard to generalize motions
– Registration is difficult Often seems “weightless” – Bill Kroyer,
Rhythm & Hues
Oct 16, Fall 2006 IAT 410 73
Simulation (Broadly Defined)
Physics is hard to simulate Pseudo-physics is somewhat hard Control is very hard Gives Generalization + Interactivity
User/AI
DesiredBehavior
Control
Forces and Torques Model
Numerical Integrator
Graphics
State
Oct 16, Fall 2006 IAT 410 74
When to Use What Method? Keyframing
– Sprites and other simple animations– Non-human characters– Coarse collision detection
Motion Capture– Human figures– Subtle motions, long motions
Simulation– Passive simulations– When interactivity w/ motion is important