walk cycles : definition & history references (1)cs194-8/fa06sp07/... · 2006-11-13 · the...

4
1 CNM 190 CNM 190 Advanced Digital Animation Advanced Digital Animation Lec Lec 12 : Walk Cycles & Autonomous Motion 12 : Walk Cycles & Autonomous Motion Dan Garcia Dan Garcia, EECS (co-instructor) , EECS (co-instructor) Greg Niemeyer, Art (co-instructor) Greg Niemeyer, Art (co-instructor) Jeremy Huddleston Jeremy Huddleston, EECS (TA) EECS (TA) John John Cleese Cleese “Silly Walk Silly Walk” animated using SPAM software animated using SPAM software 2/24 Walk Cycles & Autonomous Motion http://inst.eecs.berkeley.edu/~selfpace/ CNM190 Overview Overview Walk Cycles Walk Cycles Definition, History Definition, History References References What makes a What makes a great walk cycle? great walk cycle? Examples Examples SPAM demo SPAM demo UCB Research UCB Research Autonomous Motion Autonomous Motion Definition Definition Flow Chart Flow Chart Finite State Machines Finite State Machines Brian Brian Mirtich Mirtich Demo Demo 3/24 Walk Cycles & Autonomous Motion http://inst.eecs.berkeley.edu/~selfpace/ CNM190 Walk Cycles : Definition & History Walk Cycles : Definition & History Definition Definition A sequence of frames capturing a walk movement A sequence of frames capturing a walk movement History History Since the early days of hand-drawn animation, Since the early days of hand-drawn animation, these have been used to get characters from A to B these have been used to get characters from A to B and, most importantly, to and, most importantly, to capture & convey emotion capture & convey emotion www.idleworm.com/how/anm/02w/walk1.shtml 4/24 Walk Cycles & Autonomous Motion http://inst.eecs.berkeley.edu/~selfpace/ CNM190 References (1) References (1) The Illusion of Life The Illusion of Life : : Disney Animation Disney Animation by Frank by Frank Thomas & Ollie Thomas & Ollie Johnston Johnston Two of Disney Two of Disney’s Nine Old Men Nine Old Men” “… “… gives many glimpses gives many glimpses into the workings of the into the workings of the animation masters at animation masters at Disney's during the Disney's during the Golden Age of animation Golden Age of animation” On every professional On every professional animator animator’ s bookshelf s bookshelf 576 Pages 576 Pages Disney Editions, 1995 Disney Editions, 1995 Out-of-print! ~$40 Out-of-print! ~$40 en.wikipedia.org/wiki/The_Illusion_Of_Life 5/24 Walk Cycles & Autonomous Motion http://inst.eecs.berkeley.edu/~selfpace/ CNM190 References (2) References (2) The Animator The Animator s Survival Kit s Survival Kit by Richard Williams by Richard Williams 352 pages 352 pages Faber & Faber, 2002 Faber & Faber, 2002 ~$20 new, ~$15 used ~$20 new, ~$15 used Cartoon Animation Cartoon Animation by Preston Blair by Preston Blair 144 pages 144 pages Walter Foster, 1994 Walter Foster, 1994 ~$15 new, ~$10 used ~$15 new, ~$10 used www.amazon.com 6/24 Walk Cycles & Autonomous Motion http://inst.eecs.berkeley.edu/~selfpace/ CNM190 References (3) References (3) Principles of Traditional Principles of Traditional Animation Applied to Animation Applied to 3D Computer 3D Computer Animation Animation , Computer , Computer Graphics, pp. 35-44, Graphics, pp. 35-44, 21:4, July 1987 21:4, July 1987 (SIGGRAPH 87). (SIGGRAPH 87). by John by John Lasseter Lasseter He shared the secrets of the He shared the secrets of the kingdom with 3D animators kingdom with 3D animators There There’ s an abridged version s an abridged version online (URL above) online (URL above) www.siggraph.org/education/materials/HyperGraph/animation/character_animation/principles/prin_trad_anim.htm

Upload: nguyenbao

Post on 06-Aug-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

1

CNM 190CNM 190Advanced Digital AnimationAdvanced Digital Animation

Lec Lec 12 : Walk Cycles & Autonomous Motion12 : Walk Cycles & Autonomous MotionDan GarciaDan Garcia, EECS (co-instructor), EECS (co-instructor)

Greg Niemeyer, Art (co-instructor)Greg Niemeyer, Art (co-instructor)Jeremy HuddlestonJeremy Huddleston,, EECS (TA) EECS (TA)

John John Cleese Cleese ““Silly WalkSilly Walk”” animated using SPAM softwareanimated using SPAM software

2/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

OverviewOverview

Walk CyclesWalk Cycles Definition, HistoryDefinition, History ReferencesReferences What makes aWhat makes a

great walk cycle?great walk cycle? ExamplesExamples SPAM demoSPAM demo UCB ResearchUCB Research

Autonomous MotionAutonomous Motion DefinitionDefinition Flow ChartFlow Chart Finite State MachinesFinite State Machines Brian Brian Mirtich Mirtich DemoDemo

3/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

Walk Cycles : Definition & HistoryWalk Cycles : Definition & History

DefinitionDefinition A sequence of frames capturing a walk movementA sequence of frames capturing a walk movement

HistoryHistory Since the early days of hand-drawn animation,Since the early days of hand-drawn animation,

these have been used to get characters from A to Bthese have been used to get characters from A to Band, most importantly, to and, most importantly, to capture & convey emotioncapture & convey emotion

www.idleworm.com/how/anm/02w/walk1.shtml

4/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

References (1)References (1)

The Illusion of LifeThe Illusion of Life : :Disney AnimationDisney Animation by Frankby Frank Thomas & OllieThomas & Ollie

JohnstonJohnston Two of DisneyTwo of Disney’’ss

““Nine Old MenNine Old Men”” “…“… gives many glimpses gives many glimpses

into the workings of theinto the workings of theanimation masters atanimation masters atDisney's during theDisney's during theGolden Age of animationGolden Age of animation””

On every professionalOn every professionalanimatoranimator’’s bookshelfs bookshelf

576 Pages576 Pages Disney Editions, 1995Disney Editions, 1995 Out-of-print! ~$40Out-of-print! ~$40

en.wikipedia.org/wiki/The_Illusion_Of_Life

5/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

References (2)References (2) The AnimatorThe Animator’’s Survival Kits Survival Kit

by Richard Williamsby Richard Williams 352 pages352 pages Faber & Faber, 2002Faber & Faber, 2002 ~$20 new, ~$15 used~$20 new, ~$15 used

Cartoon AnimationCartoon Animation by Preston Blairby Preston Blair 144 pages144 pages Walter Foster, 1994Walter Foster, 1994 ~$15 new, ~$10 used~$15 new, ~$10 used

www.amazon.com

6/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

References (3)References (3)

Principles of TraditionalPrinciples of TraditionalAnimation Applied toAnimation Applied to3D Computer3D ComputerAnimationAnimation, Computer, ComputerGraphics, pp. 35-44,Graphics, pp. 35-44,21:4, July 198721:4, July 1987(SIGGRAPH 87).(SIGGRAPH 87). by John by John LasseterLasseter He shared the secrets of theHe shared the secrets of the

kingdom with 3D animatorskingdom with 3D animators ThereThere’’s an abridged versions an abridged version

online (URL above)online (URL above)

www.siggraph.org/education/materials/HyperGraph/animation/character_animation/principles/prin_trad_anim.htm

2

7/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

What makes a great walk cycle? (1)What makes a great walk cycle? (1)

Four distinct posesFour distinct poses Contact Contact –– feet at furthest extension of walk (start here) feet at furthest extension of walk (start here) Recoil Recoil –– where the character impacts the ground where the character impacts the ground Passing Passing –– an an ‘‘in-betweenin-between’’ of of Recoil and High PointRecoil and High Point High PointHigh Point –– character character’’s body stretched to maxs body stretched to max

www.idleworm.com/how/anm/02w/walk1.shtml

8/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

What makes a great walk cycle? (2)What makes a great walk cycle? (2)

Depending on theDepending on theemotion to convey,emotion to convey,these four basicthese four basicposesposes may changemay change No 2-pt contact poseNo 2-pt contact pose

for run cyclesfor run cycles E.g., skipping requiresE.g., skipping requires

more thanmore than 4 poses4 poses

Note several thingsNote several things Path of headPath of head Lean ofLean of body, headbody, head ArmsArms & hands matter!& hands matter!

minyos.its.rmit.edu.au/~rpyjp/a_notes/walk_reference_01.html

Preston Blair’s Walk Cycles

9/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

What makes a great walk cycle? (3)What makes a great walk cycle? (3)

Four-legged figuresFour-legged figuresare similar, but moreare similar, but morecomplicatedcomplicated Are legs in phase?Are legs in phase? Horses have vastlyHorses have vastly

different cyclesdifferent cyclesdepending on speeddepending on speed

This is relevant forThis is relevant forboth teamsboth teams Elephants, GiraffesElephants, Giraffes Robot DogRobot Dog

minyos.its.rmit.edu.au/~rpyjp/a_notes/walk_reference_02.html

Preston Blair’s Walk Cycles10/24Walk Cycles & Autonomous Motion

http://inst.eecs.berkeley.edu/~selfpace/CNM190

What makes a great walk cycle? (4)What makes a great walk cycle? (4)

Red line shows off-Red line shows off-balance leanbalance lean for afor atypical walk cycletypical walk cycle

Happy charactersHappy characters Bouncy, more time upBouncy, more time up

in the air than downin the air than down

Sad charactersSad characters Plod along, drag feetPlod along, drag feet

Step distance alsoStep distance alsosignals emotion, agesignals emotion, age Older, shy Older, shy shuffle shuffle

minyos.its.rmit.edu.au/~rpyjp/a_notes/04_walkcycle_project.html

11/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

What makes a great walk cycle? (5)What makes a great walk cycle? (5)

The walk cycleThe walk cycleshould have good,should have good,consistent transverseconsistent transversemotions (L-R)motions (L-R) E.g., Note arms; theyE.g., Note arms; they

dondon’’t just rotate int just rotate indirection of walkdirection of walk

minyos.its.rmit.edu.au/aim/a_notes/walk_reference_03.html

12/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

Examples of WalksExamples of Walks

Fortunately, itFortunately, it’’s easy tos easy toact out a walk & film itact out a walk & film itfor analysisfor analysis

Humans good atHumans good at reading impossiblereading impossible andand

bad walksbad walks reading emotion fromreading emotion from

walkswalks

Make sure to conveyMake sure to conveyweight, balanceweight, balance

Practice, practicePractice, practice LetLet’’s see some exampless see some examples

minyos.its.rmit.edu.au/~rpyjp/a_notes/04_walkcycle_project.htmlwww.anticz.com/Walks.htm

Monty Python’s Ministry of Silly Walks

3

13/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

SPAMSPAM –– FK Walk EditorFK Walk Editor

I wrote a I wrote a forward-kinematicforward-kinematicwalk editorwalk editor back in 1994back in 1994

It uses a cubic It uses a cubic BBézier splineézier splineto interpolate:to interpolate: Q(t) = Q(t) = VV00 (1-t) (1-t)33 + + VV11 3t (1-t)3t (1-t)22

+ + VV22 3t 3t22 (1-t) + (1-t) + VV33 t t33

I start at forward footI start at forward foot asasroot and work up & downroot and work up & down

digitalassets.lib.berkeley.edu/techreports/ucb/text/CSD-94-860.pdf

14/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

Walk Generation Walk Generation ––  Use Use MoCapMoCap!!

We sawWe saw a a MoCapMoCapdemo last weekdemo last week

With a talented actor,With a talented actor,you can create anyyou can create anyhuman motionhuman motion E.g., E.g., LoTR LoTR ““GollumGollum”” You can also use theYou can also use the

data as a startingdata as a startingpoint for editingpoint for editing

Might be lots of rawMight be lots of rawdata cleaning updata cleaning up

Purists donPurists don’’t use itt use it

en.wikipedia.org/wiki/Motion_capture

15/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

Walk Cycle SummaryWalk Cycle Summary……PersonalityPersonality

““The objective of the [Animation]The objective of the [Animation]principles previously discussed [inprinciples previously discussed [inhis SIGGRAPH paper] are to givehis SIGGRAPH paper] are to givethe characters in an animation the characters in an animation aapersonality that appeals to thepersonality that appeals to theviewersviewers..””

““The different principles should beThe different principles should beapplied in a fashion to produce aapplied in a fashion to produce aconsistent personality.consistent personality.””

““This means that This means that the animatorthe animatormust have a good idea of themust have a good idea of thedesired personality desired personality beforebeforebeginning the animationbeginning the animation..””

www.siggraph.org/education/materials/HyperGraph/animation/character_animation/principles/personality.htm

16/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

UCB Walk-Related ResearchUCB Walk-Related Research

There has been a lot ofThere has been a lot ofresearch done hereresearch done hererelating to walk cycles &relating to walk cycles &MoCap MoCap databasesdatabases Electronic Arts gave usElectronic Arts gave us

some of their some of their MoCap MoCap datadata Okan Arikan Okan Arikan (now a Prof(now a Prof

at U Texas) led charge,at U Texas) led charge,with Profs Owith Profs O’’Brien, ForsythBrien, Forsyth

Knowing When to PutKnowing When to PutYour Food DownYour Food Down

Pushing people aroundPushing people around Motion Synthesis fromMotion Synthesis from

AnnotationsAnnotations Motion Synthesis &Motion Synthesis &

RetargetingRetargeting3 UCB MooVs

www.cs.berkeley.edu/b-cam/www.cs.utexas.edu/~okan/

17/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

Autonomous MotionAutonomous Motion

More than simplyMore than simplyspacetime spacetime constraintsconstraints

This fieldThis field is VAST, foris VAST, forsome the Holy Grail!some the Holy Grail! Artificial intelligenceArtificial intelligence Artificial lifeArtificial life RoboticsRobotics Video gamesVideo games Crowd, herd & flockingCrowd, herd & flocking

simulationssimulations

Real-time >> BatchReal-time >> Batch In terms of $, interestIn terms of $, interest

18/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

Autonomous Animated CharactersAutonomous Animated Characters

HereHere’’s a general frameworks a general framework……

www.kuffner.org/james/anim/framework.php

WhyWhyWhereWhere

HowHow

4

19/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

Lots of questions ; this is hard!Lots of questions ; this is hard!

Why / Where,Why / Where,often in real timeoften in real time…… What behavior isWhat behavior is

generated /generated / issued?issued? Where do we go?Where do we go? What is the emotion?What is the emotion? WhatWhat’’s our motivation?s our motivation? What is our mood asWhat is our mood as

the result of the newthe result of the newmotion / location?motion / location?

When do we haveWhen do we havebirths / deaths?births / deaths?

How do we,How do we,often in real timeoften in real time…… select the animationsselect the animations

from DB? Orfrom DB? Or…… auto-generate theauto-generate the

animation?animation? blend the animationsblend the animations

we have with what iswe have with what isrequested?requested?

retarget animationsretarget animationsto capture request?to capture request?

scale pre-setscale pre-set motionsmotionsfor new characters?for new characters?

20/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

Intelligence : Finite State Machines (1)Intelligence : Finite State Machines (1)

VERY powerful ideaVERY powerful idea Model of behaviorModel of behavior

composed of composed of statesstates,,transitionstransitions & & actionsactions

State (1 must be a start)State (1 must be a start) Past informationPast information

TransitionTransition Condition that triggersCondition that triggers

state changestate change

ActionAction Activity performed at aActivity performed at a

given momentgiven moment

en.wikipedia.org/wiki/Finite_state_machine

FSM for gum machine

21/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

Intelligence : Finite State Machines (2)Intelligence : Finite State Machines (2)

4 Kinds of Actions. For4 Kinds of Actions. Foreach, each, ““Execute action _Execute action _”” EntryEntry : : ……when ENTERINGwhen ENTERING

statestate ExitExit : : ……when EXITINGwhen EXITING

statestate InputInput : : ……dependent ondependent on

present state and inputpresent state and inputconditionsconditions

TransitionTransition : :……whenwhenperforming a transitionperforming a transition

en.wikipedia.org/wiki/Finite_state_machine

22/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

Brian Brian MirtichMirtich, 1996 UCB Ph.D., 1996 UCB Ph.D.

Thesis: Thesis: ““ImpulseImpulse - -based Dynamicbased DynamicSimulation of RigidSimulation of RigidBody SystemsBody Systems”” He focused onHe focused on

dynamic constraintsdynamic constraints Very cool work!Very cool work!

““Creature WarCreature War”” demo demo His purpose: show offHis purpose: show off

his simulatorhis simulator Great exampleGreat example ofof

FSM-based AI!FSM-based AI!Mirtich’s Creature War

www.kuffner.org/james/software/dynamics/mirtich/

23/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

Boids Boids –– Distributed Behavior Distributed Behavior

Big idea : Give manyBig idea : Give manycharacters their own FSMcharacters their own FSM

Craig ReynoldsCraig Reynolds ““foundedfounded””first first Boids Boids in 1986; A-Lifein 1986; A-Life SeparationSeparation –– steer to avoid steer to avoid

crowding local crowding local flockmatesflockmates AlignmentAlignment –– steer towards steer towards

the average heading ofthe average heading oflocal local flockmatesflockmates

CohesionCohesion –– steer to move steer to movetoward the averagetoward the averageposition of local position of local flockmatesflockmates

Emergent Emergent behavoirbehavoir!! CrowdsCrowds just another just another

example of same ideaexample of same idea……

www.red3d.com/cwr/boids

Boids Applet, Movie, It’s a Big Ad

24/24Walk Cycles & Autonomous Motionhttp://inst.eecs.berkeley.edu/~selfpace/

CNM190

ConclusionConclusion

Autonomous Motion (Autonomous Motion (inclinclWalking) is theWalking) is the goal ofgoal ofmany (many (esp esp games!!)games!!)

Imagine virtual actorsImagine virtual actorsinteracting in real timeinteracting in real time What do they want to doWhat do they want to do

and when?and when? How do they generateHow do they generate

smooth motion to do it?smooth motion to do it? Can actors die? Be born?Can actors die? Be born?

FSM key to it all!FSM key to it all! Strong Strong vs vs Weak AIWeak AI

Strong: An amazing FSMStrong: An amazing FSMcan have can have ““sentiencesentience””!! Commander Data from Star Trek

en.wikipedia.org/wiki/Strong_AI