How to Animate a Character - PowerPoint PPT Presentation

About This Presentation
Title:

How to Animate a Character

Description:

how the animation system sees creatures. skin, just for wysiwyg. bodies ... see Chaim's talk on the editors. Friday, 2:30pm 3:30pm. So, we have a problem. ... – PowerPoint PPT presentation

Number of Views:42
Avg rating:3.0/5.0
Slides: 41
Provided by: ChrisH111
Category:

less

Transcript and Presenter's Notes

Title: How to Animate a Character


1
How to Animate a Character
Youve Never Seen Before
Chris Hecker, Maxis checker_at_d6.com
2
(No Transcript)
3
traditional
game pipeline development
make pipeline
create assets
bake assets
test assets
ship game
4
game pipeline development
spore
make pipeline
create assets
bake assets
test assets
ship game
make pipeline
ship game
create assets
bake assets
?
5
What can players make?
6
creatures
skin paint parts bones
7
credits
Kees van Prooijen Jordan Maynard Ryan W.
Enslow Bernd Raabe John DeWeese
Bob King Gal Roth John Cimino Tony Gialdini
Steve Eng Steve Lim
Steven Sadler Patrick Benjamin
8
how the animation system sees creatures
skin, just for wysiwyg bodies xforms for mesh
parts have capabilities parts, limbs,
spine joints between bodies ik chains
9
very few limits on topology morphology
tree structure some socket constraints scale
limits shader bone limits see Chaims talk on
the editors Friday, 230pm 330pm
10
So, we have a problem.
How do we make them move show intent
purpose convey emotions?
11
idea describe the movement
1st approach classically procedural
12
Now, we have another problem.
Do we hire animators who can program? programmers
who can animate?
13
take a step back
Want to hire animators who can animate!
but how?
14
How?
Show, dont tell.
Example based, not descriptive. Animate on one
creature, the software applies it to the
others...somehow.
15
watch animators work
select bone
move bone
16
selecting
Where is bone 57?
images from http//highend3d.com/articles/features
/25-4.html
17
selecting
Need to add semantics describe what youre
selecting. we call this description a context.
Id like to select the left topmost grasper,
please.
18
selecting
(demo)
19
selecting in code
Code performs a context query, can return 0, 1,
or many bodies.
This is how the code reasons about the
creature. The code needs to deal with the
variable results. This is hard.
20
moving
How do you punch something?
Move bone 57 to (3.14, 2.72, 1.62).
21
moving
How do you punch something?
Move fist to the target, please.
Again, we require semantics, describe the
intent. this is the frame of the movement.
22
moving - madlibs
move grasper to same creatures mouth.
move grasper to other creatures grasper.
move mouth to external target.
move slasher to position relative to ground.
move slasher to absolute position.
23
moving - scaling
Is a given movement big because the creature is
big? the movement is inherently big? the target
is far away?
The animator needs to tell the system.
(demo)
24
moving - frame
This description of the movement specifies the
frame in which it is recorded. Even for multiple
bodies on the same creature.
25
moving - space
Generalized recorded in the frame of the movement
mode. all keys are in generalized
space. Specialized projected onto a single body
on a creature. multiple projections for multiple
bodies.
26
a spore animation file
animation channel context descriptions (madlibs,
scaling) keys channel channel...
27
the spore animation runtime loop
for each creature, for each animation tick to
time interpolates generalized splines for each
channel evaluate context query for each
body specialize onto body compute gait and
wiggles dump all goals into ik solver
28
gaits
The game drives around an oriented particle.
The gait system tries to keep up.
29
gaits
cluster legs based on length move foot goals
using parameters step height length trigger
duty factor lots of other parameters toe curl,
ankle angle hip rotation and translation
(demo)
30
wiggles
We want secondary animation tail bobbing, arm
swaying, without manual keying.
31
wiggles
Find wiggleable bodies that havent been
selected. Add secondary with damped spring mass
system.
(demo)
32
the constant question
How well does an animation generalize across lots
of creatures?
33
stochastic testing
AVG Animation Validation Grid
34
branching
split up creature-space
has feet has graspers upright spine
35
ik solver
Decouple procedural systems from needing to think
about creature topology. Just set goals on
bodies.
36
ik solver
Want it to be fast. accurate in workspace. fail
gracefully if missing goal. decide not to hit
goals for quality. path independent.
37
ik solver history
0.0 linked rigid bodies, constraints,
controllers slow, inaccurate, unstable, not
posable 1.0 multibranch 6DOF CCD complex,
slow, more accurate, not tunable 2.0 particle
IK control freak fast, accurate, more
tunable, twitchy, fails poorly 2.5 particle IK
laid back fast, accurate, tunable, smooth,
fails better
38
useful takeaways?
target relative curves
semantics are valuable
ik solver experience
custom tool was worth it
39
thank you
(demo)
40
How to Animate a Character
Youve Never Seen Before
Chris Hecker, Maxis checker_at_d6.com
Write a Comment
User Comments (0)
About PowerShow.com