Saturday, March 8, 2008

How I Work


I always love reading about how others go about animating their scenes, so I thought I'd add my own process and preferences to the mix, incase anyone might be interested:) I like talking workflow with others because it allows me to discover new methods and inspires me to try new things. It also helps me organize my thoughts, as well as reminds me of the things I should be thinking about for each new animation--because I tell ya, this animation thing ain't easy!
_________________________________________________________

So...in the tradition of other workflow posts out there, I'll start by throwing up my own disclaimer:
  • I know I still have a lot to learn about animation, and I will probably always have a lot to learn. The following workflow habits are ones that seem to have worked for me for the past 4-5 years. However, I'm contantly experimenting. Ask me how I work a couple of months from now and my answer could be totally different. (Hopefully not too different). In the end, what really matters is what the audience sees on the screen.

_________________________________________________________

Alrighty, now on to it!..

When I first started animating in 3D, I read about the layered approach to animation--animate the root first, then continue outwards.

That seemed to work for a while. Individual motions in my animation were "loose" enough because keys were offset, but the overall animation still came up a bit stiff, esp. with the poses. I found it difficult to predict what pose was to come next without seeing the full pose before it. After struggling with this for a while, I decided to go back to a more traditional method by treating each keyframe as a drawing, and keying all controllers for that "drawing".

This leads me to my biggest mantra:

To keep things simple, I try to remind myself that animation really comes down to these two things:

Poses and Timing
  • Now, I'm sure you've heard this before, but when I say poses and timing, I'm including the breakdowns, extremes, and "overlap" poses (in addition to keyposes of course).
  • Also, for each of these poses, I'm setting a key on all of the controllers.

I feel that breakdowns and extremes can be just as important as key poses, and that having a key on all of the controllers for each pose ensures that I have full control over that pose when I start adjusting my animation. I also feel that you get stronger follow-through by actually creating these "overlap poses", rather than by just offsetting.


So in short, here's what I do...

  • For most of my work, I prefer to straight ahead, keying all as I go. I then slide the poses around in the dopesheet for timing and finess the poses as needed. At this point I should be about 70% of the way there. From there I start the polish, which could take up more than 50% of the time.
  • I think this method lends itself well to action-heavy animation. For the acting stuff, the breakdowns and overlap poses may come after, when all of the keyposes are in. This is unless the transition between 2 keypose is a bit more physical, in which case I'd straight ahead to the next pose with the breakdowns.
  • After my initial block-in, I think I end up with more of these "keyed-all" poses than what you may consider typical.


Exceptions/ variations

  • If there is a really important pose I have to hit (like a grapple idle, where other animations may branch off of) I might straight ahead very loosely to that pose, make sure that pose is solid first, then come back and tighten up the others to make it work for that pose.
  • For a cinematic sequence, I'd probably very loosely block in the entire sequence of shots, using the least amount of poses needed to portray the purpose of each shot. I'd then show that for feedback and/ or appoval. After that, I'll go back and do full straight ahead animation on each individual shot as before.

__________________________________________________________

Layering and Offsetting

While setting these poses during the initial block-in, I do not worry about any layering or offsetting of keys.

  • This way, I could easily slide poses around in the dopesheet until I'm pretty happy with the timing.
  • It also keeps things clean and facilitates revision as you're going through the approval process with whomever is in charge.
  • I'd also try to keep it like this for as long as I can. If it's a game animation, I'd rather have it tested in the game before I even think about starting any polish.
  • If it was up to me, I'd leave all of the animation assets at this level of finish, and start polish only when each specific game feature is deemed "fun".


Do I ever layer my animation?

  • Sure, but only if the situation calls for it and usually not as a foundation or an initial block-in, even for walks and runs.
  • I admit, some animations will lend itself to a more layered approach, but even with these, I would still lock-down a couple of full-body poses first. (example=> Hit-reacts, Knock-back anims)
  • Wings, tails, and other secondary parts are usually layered in after.
  • Finally, as a quick note for action vs. acting, I'm noticing that I tend to layer a bit more for subtler acting as opposed to the broader physical actions. Details and nuances are usually layered in.

Do I offset keys?

  • Yes, for finer overlap, but only near the end, only when necessary, and only the least amount needed.
  • Again, this is to allow for easier/ quicker changes. And believe me--requests for changes are common in a real production environment. Animating for gameplay is a very iterative process. Not only does it have to look good, it has to function properly with regards to the game design. And the design will often go through many changes during the production cycle.

Finally, whenever I get lost in the mess of keys and my animation just isn't cooperating, I could always find my way back by stamping poses and deleting some of the mess. I'll then reassess these poses, and possibly add a few more key-all poses if needed.

Believe me--if time doesn't permit and all you have are the right poses, the right number of poses, all hitting at the right beats, You're animation will have weight and will be fluid, even if you don't have a single offset (or a few in the feet, perhaps).

This way of thinking may have stemmed from my traditional background (because if you think of it, all 2D animators have to work with are "keyed-all" poses every 2 frames). Nonetheless, this method makes things easier for me to digest.


After block-in

  • After the initial block-in, the feet are usually the first things to be offset.
  • To keep things organized a bit longer I then continue to offset body sections from each other (only if I need to), while still treating each section as a whole as opposed to offsetting their sub-components. For example, I'll treat the spine as one shape and not as individual joints. Each arm is one shape. This goes for the hand/ fingers and legs as well. With tails, esp. when there are many joints, I think of it as whole shapes as I'm animating, and not individual sections. Not until it's already flowing and overlapping with key-all poses do I think of offsetting.
  • For wings I'll animate the root of each wing to quickly block in where I want the flaps. I'll then go back and treat all the controllers of each wing as a whole shape.
  • When I offset, I don't just slide keys around. Sometimes I'll stamp a key where I think the offset should take place, adjust it, then delete the previous key.
  • Even when you start to offset and add keys to refine arcs, you could still see the major landmarks in the dopesheet, in case you need to blow out keys and make changes.


To better illustrate all of this, here are 2 examples from my previous posts:




Reference was shot for only the last strike of this combo. I try to pay attention to what the feet are doing. And again, the overall speed is exaggerated for gameplay.



This is what the final animation looks like in the dopesheet. Even in the end, you could still see where all the main poses are. Things are still organized, and if I have to make any changes, it shouldn't be too difficult.


No reference was shot for this next one. I didn't want to hurt myself!





__________________________________________________________

Miscellaneous Preferences


Here are some additional, miscellaneous tidbits I prefer.

***Again I'm not here to spark up a debate or start a fight. I just enjoy talking to other animators about how they go about the "little" things and what they prefer. I always find it interesting and often times it inspires me to actually try that "new" way of doing something, just to see if it would work for me.
  • Up until now, I've mainly used spline tangents as the default for action heavy stuff and clamped tangents when working on subtler performing pieces. I hate to admit it, but I actually sometime use splines' overshoots to my advantage, mostly for the action stuff. I do acknowledge, however, that things could get a bit rubbery/ floaty if I'm not careful. These days I think I might stick to clamp as the default.
  • So far, I haven't found stepped keys to work too well for me. Maybe I'm not using it correctly. To be fair though, I'm going to give it another shot for the quieter acting pieces I'm doing these days.
  • Weighted-tangents--Again, I know animators who swears by them as well as animators who don't use them at all. There are great animators on both sides. I personally haven't used weighted tangents in the past as I think I prefer to set that extra key for more control (though I have been thinking about giving them another shot for the more subtle stuff. I'm pretty sure, though, I won't be using them for action) Here's my final answer to this debate. What matters is what the audience sees on screen--you're animation, not your tangents. Haha!--I managed to stay diplomatic on that one! Seriously though...find what works for you, but always keep an open mind and try new things.
  • Finally, I tweak tangents only in the end, and probably not too extensively. My reasoning for this is that the moment you adjust a tangent, it won't automatically try to smooth out the curve if you adjust that key. So if you touch a tangent in the beginning, every time you adjust that key, you will probably have to adjust that tangent. Plus it's too easy to let the OCD side of me kick in regarding numbers and curves, it's too easy to get caught up with the graphs and overlook the actual pose in the viewport.

As for the rigs, I generally prefer a clean simple rig, nothing too fancy. As long as it has FKIK switching and matching, and the controllers aren't confusing, I'm happy. Oh--and it has to have a low-res, unskinned, proxy mesh that can be toggled with the final mesh--I'm greedy when it comes to the playback frame rate. :) I do have a longer list of preferences when it comes to rigs, but I'll save that for another post.


TOOLS

Before you animate, get comfortable!

  • First off, get a bigger monitor or preferably a 2nd one. The extra real-estate makes a huge difference! If you can't afford one, save up. It's you're career, invest in it.
  • Get a good chair. Statistically, 8 out of 10 Americans will get some form of back pain in their lifetime. I threw out my back once and I can assure you, it's no fun.
  • Try out Evoluent's vertical mouse. If I'm on the computer for too long, my wrists starts hurting. Several friends recommended this mouse. I gave it a shot, and ended up buying both a left and a right one to alternate throughout the day. You could also try using a Wacom Tablet--yet another way to switch it up.
  • Check out RSI Guard - there's a free trial version. It's a program that keeps tab on how much typin'/ mousin' you're doing and reminds you to take periodic breaks.
  • Buy Quicktime Pro if you don't already have a "special" version. It's only 30 bones, but comes in handy when you need to save a video clip off the net, trim reference clips, or compress and export clips.
  • Take the time to set up scripts, hotkeys, and shelves in Maya. It may seem like a hassle, but you'll thank yourself when your knee deep in keys and curves.
  • Check my previous post for some of the scripts I use ("A Few Good Mels"). Go to Highend 3D for more.
  • Here are some of my hotkeys.

    x-ray toggle (very useful for finding that polevector or other controller that's hidden behind some piece of geometry) Map this command to the hotkey of your preference.

    $currentPanel = `getPanel -withFocus`;
    $state = `modelEditor -q -xray $currentPanel`;
    modelEditor -edit -xray (!$state) $currentPanel;

    I like to reserve my second monitor for the character GUI, the face GUI, my reference video(s), the finalShot camera view (if it's a cinematic), and my IM.
    Because of this, I set up these hotkeys.

    "h" brings up my
    grapheditor layout (2 panel splitscreen: 2/3 Perspective, 1/3 Graph Editor)

    "d" brings up my
    dopesheet layout (2 panel splitscreen: 2/3 Perspective, 1/3 Dope Sheet)

    "8" brings up my
    walk run layout (3 panel splitscreen: 2/3 Front/Side, 1/3 Graph Editor)

    I also map PlaybackToggle to "`" and "0". (under "Playback Controls" category)

    As for Maya's shelves, I love 'em! For each character I create separate shelves for them. One could be for body poses and selection sets. One could be for hand poses and another for the face. Regarding hand and face poses--these are just for speed. It's to get you maybe 80% of the way there so you could adjust quickly. Again, in a production environment, time is always a factor. You never seem to have as much time as you'd like, so you have to find ways to speed up the process--ways to buy you more time for the important shots. The quicker you get to 80% the more time you have for polish.

__________________________________________________________

PLANNING

I'm sure you've all heard that planning is super important. I totally agree! And although I put this section last, it should be first.

Before you start anything, ask questions

  • Know the purpose of the animation you're about to do. Find out how it fits in the bigger picture. If it's a cinematic, know what your shot is trying to show. Know the purpose of the character. Know what the shot is before and after your shot.
  • If it's a game, find out what this attack is supposed to do. Is it supposed to knock the enemy up? Back? Is it supposed to stun it? Kill it? Are there limitations? Is the animation supposed to be contained to an area? Is the attack supposed to hit at 4ft, translate only 5 feet max and have the player character rotate 180 degrees into the Idle Pose to face the enemy who's in the Prone_Back Pose facing you?
  • Simply put, the more you ask, the more you'll know. The more you know, the less likely you're going to have to redo that awesome animation of yours because it didn't fit into the big picture.

Observe

Regarding video reference, here are my thoughts.

  • Video reference is a great tool, probably one of the best in our arsenal. There is a small trap, however, that you should all be aware of.

You ready? Here goes.

  • If you're not careful, and you start to rely on it too much, you could become a slave to it.

Wait! Hear me out. This is what I mean when I say "rely."

  • The trap that you could easily fall into if not careful is to rely on reference too much...or better put, not use reference to it's fullest. This happens when you merely scrub through the quicktime file, find a pose, slap it onto your character, then move on to the next, rinse/repeat, as opposed to really analyzing and breaking down the mechanics or the emotional shifts embedded in your ref. You concentrate too much on the "what" is happening in the reference video and not enough on the "how" and "why".
  • If you've been using reference too much this way, then you've become a slave to your reference and you could run into trouble when it comes time to animate something that can't easily be referenced.
  • I've seen it happen. Heck, I've been guilty myself at times!
    Instead of just concentrating on "what cool pose can I find" concentrate also on "why is this pose cool or why is this pose happening and why do I need this pose here?" This way you're more likely to understand why things are happening and you'll be better adept at drawing from what you've learned the next time you have to animate something that has to be straight out of your head because it's something that's beyond what a human can actually do.
  • In the past I often tried to balance referencing my animations with a more spontaneous and gung ho method. Sometimes, I'll just jump into the computer with only a broad idea and see where my instincts takes me. Although caution is definitely advised here, this is why I've done it. First, maybe I just can't shoot reference for this crazy move. Maybe I have to finish this animation in a couple of hours. But seriously, I find that it can be a good thing for me to do from time to time to keep me on my toes--force myself to analyze and breakdown things a bit deeper for myself (body mechanics, weightshifts, underlying thoughts). I'd say about a third of the stuff on my reels was referenced, and probably less for all the animation assets that went into the final game.

Now...with all that said...

If it's an important shot, I'll most likely shoot reference if I can. I imagine if I were ever lucky enough to work on a film, I'm pretty certain I'd shoot reference for every shot that I'm able to shoot reference for.

Bottom line is--work the reference, don't let it work you.

Moving on...


Visualize!

  • See the animation in your head.
  • Thumbnail if you can. To be honest, though, I haven't been doing it much for the past 4 years. I do want to try to thumbnail more, though. I know of great animators who don't thumbnail, as well as great animators who do. I'm sure it's not absolutely necessary but it can help.
  • The clearer your idea is before you touch the mouse and keyboard, the smoother and usually quicker everything will fall in place.


POLISH

  • Once I'm pretty certain no major changes will be requested, I will then cross my fingers and start checking arcs, tightening tangents and adding and offsetting keys wherever I feel is necessary--on every frame for individual sections if I have to.
  • At this point, switch over to "free-form mode" and allow yourself to get a bit "dirty" with your keys. If you did your work honestly and you set a strong foundation, you'll be fine. Your graphEditor could end up looking like a mess, but again, it's what's on screen that really matters.
  • Perhaps step away from the animation for a while, work on something else, and come back to it later to get a fresh eye.
  • Also get feedback! Everyone could give valuable feedback, not just animators. To be honest, often times, my daughter and nephews give me spot on feedback becuase they don't over analyze. They just look at the big picture.

I have one final note about polish I think is quite important. The following could easily be misinterpretted so please, don't take what I'm about to say the wrong way and think of me as one who's just lazy or is always looking for shortcuts.

  • Basically, in an ideal world, you'd have plenty of time to polish every single animation you do. In the real world, there are budgets, schedules and deadlines.
  • This is where you need to prioritize your polish.
  • In other words, don't polish too early, layer your polish from big to small, don't over-polish what's not going to be noticed as much.
  • To hit this home a bit more, resist the temptation to polish those curves in the beginning (exception of course is when the main action depends on getting that curve accurate). Don't offset every finger or eye brow control if your character's only an inch on screen. Resist tweaking arcs and motion trails of that sword tip until you've seen your animation in game and it has been tested and approved.
  • On a bigger scale, every animation you do for the game can't be a portfolio piece. Time just doesn't permit. And if it does, let me know where you're working because I want an application! Of course you should alway do your best, but if you spend 3 days trying to polish every last inch of that get-hit animation, you're probably taking time away from that multi-strike, finishing combo, the one that the player is going to aprreciate more. I strongly believe you have to choose your battles, layer your polish in a logical order, polish what's most important first, what the audience will notice most. And if time permits, go ahead and make that hit-react a portfolio piece. I honestly think that if you try to polish every asset as you go along, you could end up with a less polished game because you may run out of time in the end to polish what really matters.

Now remember, I'm not advocating cutting corners all the time, The last thing I want to do is to come across as a slacker. All I'm saying is work smarter, choose your battles--prioritize your polish.

__________________________________________________________

So to re-cap my personal process in a nutshell
(in the right order this time):


Plan

  • Think before you animate, ask questions, know the constraints, know the purpose, know the character.
  • Visualize, have a clear idea. See the animation in your head. (this is something I'm trying to remind myself of more these days)
  • Reference (use it, analyze it, just don't be a slave to it)
  • Thumbnail (if you can, why not?)

Tools

  • Get comfortable, get ergonomic! (And don't forget to take breaks!)
  • Scripts, hotkeys, shelves -- Take the time to set them up.

Animate

  • POSES and TIMING (this is what I think it comes down to)
  • As a foundation, I key-all as I straight-ahead
  • Layering and offsetting (not initially, i do it later)
  • Dopesheet (this is where I like to adjust macro timing)
  • Graph Editor (good for polish, good for debugging hitches, just don't get caught up too early)
  • Tangents (I like to jump straight into non-weighted spline or clamped, but use what YOU'RE comfortable with)

Polish

  • Be smart - prioritize and layer it
  • Finesse arcs, tangents, curves, etc.
  • Get "free-form", get "dirty" if you need to
  • Get feedback
  • Step away and come back with a fresh eye.
  • Slip the supervisor a 20 so your shot could be approved.

_______________________________________________________

Final thoughts

Most of the stuff I've talked about works pretty well for me regarding action-oriented animations. As for acting and dialogue--that's a huge topic by itself, one that I'll be saving for a future post. I have an acting/dialogue workflow that I consider to be "in-the-works", since I haven't done as much performance as I have action. I'm still trying to refine that process. I'll let you know all about it in year! or hopefully sooner:)

I hope all of this made at least some kind of sense. I hope I don't look back on this 6 months from now and think, "what the hell was I thinking!"

If anyone has specific workflow habits that you feel works well for you, by all means, let me know! I'd love to hear it! I'm always down to try something new.

In the meantime, have fun, support others, be inspired.

Thanks for reading!

26 comments:

Ratul Sarna said...

AWESOME!
That's a gr8 insight into how a pro works.....Thanx TJ!
Such posts really help.....

Eka said...

good breakdown of your process and nice crisp animation too! Youtube Pocoyo if you haven't seen it. Cute CG kid's show with some great pose to pose work. It's pretty inspirational for us at work. Cheers.

J Chad Erekson said...

Thanks for sharing. I've enjoyed seeing the work in progress. I like how even though it s game move stuff you get some individuality and character in the movements.

Oz Gani said...
This comment has been removed by the author.
Oz Gani said...
This comment has been removed by the author.
Oz Gani said...

I'm half way through reading your workflow. Why did you make it so long and insightful man?! I got things to do, people to see! Honestly, great job man - we have quite a few similarities and I got a bunch of helpful pointers I can put to work today!

jeff said...

now i know the secret...nothing can stop me!

Just to chime in..i'm having really good luck with plateau tangents. also, my rationale for not using weighted is that the tangent handles don't scale with your animation if you slide keyframes around, locking you into tangent management at an early stage.

really insightful though...thanks for sharing!

Bobby Pontillas said...

TJ! Found your blog linked from Eka's comments. Thanks for breakin down your process. Nice to see how animators differ in their processes. Especially game animators!

TJ Phan said...

Thanks fellas.

RD,
I look forward to seeing more of your exercises.

Eka,
I want to see a painting of Liono, Cheetarah and the rest of the gang now.

J Chad,
Nice drawings!

Oz,
I'll be on the lookout for that Lair breakdown of yours.

Jeff,
Yes! Very good point about weighted tangent handles not scaling. Forgot to mention that one. Thanks for reminding me.

Bobby,
Been checkin' your blog man. Very fun personalities in you anims. And nice drawings too! Also, very cool workflow breakdown for your sled-pull anim.

Alonso said...

Thanks a lot for such an in depth post!
One reason I like thumbnailing from reference is you can take what you like, and then push it and heighten it, and then when you get on the box you are less influenced by what the rig wants to give you and more willing to keep pushing for a strong pose.

Unknown said...

Powerful post TJ. Powerful like your animation. Thank you so much for sharing your approach with the rest of us. This is packed full of knowledge and experience. Thank you so much.

Aziz Kocanaogullari said...

This was an awesome post for someone like me who's struggling nowadays trying to figure out a work flow.

Thanks so much for taking the time!

TJ Phan said...

Alonso,
Good point about not letting the limitations of the rig limit your poses, via thumbnails. I forget sometimes--it's always a good reminder to push it. Thanks!

Saul, Aziz,
Glad you guys dig it:)
And remember, this is only one way of doing things. Definitely try out all the different approaches out there. Shoot, I still do.

DLam said...

Nice man!! We all got blogs now too haha.

TJ Phan said...

D,
About time!--haha

Loh Wong Loon said...

Great Sharing...
At least i know all this years i have been animating the 'right' stuff... haha!
You're the man! TJ.
Keep coming with such cool post ya... Cheers!

Mahesh Bisht said...

Kool Stuff man......

Lov it...huh


Cheers....-MB

Chris Bivins said...

Wow really cool post. Its cool to see other people's process when it comes to their work. I dont think Ive seen one this detailed before on 3d animation. Really cool. Thanks for the sharing your insight.

-Biv

marcelino newquist said...

Hey TJ just wanted to complement you on your great work. Really solid stuff man!!! Thanks for sharing workflow, it's very insprational. Great 2d work as well. Thanks!!!

Unknown said...

Hey TJ! Awesome reels, awesome advices. I have similar workflow and i've found KeyAll method the best for majority of shots. Good luck!
-Michal

Unknown said...

Helo! I am a student and newbie in animation, and i come across your blog and it's very informative. and i was wondering how do you animate the animation the guy with the baseball bat in maya? I tried to do the same but it just that i end up with broken wrist and the parenting don't work really well when i switch hand with the baseball bat...
thanks in advance..

TJ Phan said...

Hi Arthur,

Thanks for visiting! The way I switched a weapon from hand to hand in the past was by using parent-contraints. The weapon mesh is parented (or contrained) to a nurbs curve controller. The controller's group or parent node is then parent-CONSTRAINED to both hand joints. Each parentConstraint is then toggled on or off with set driven keys or connections using custom attributes on the weapon controller. There are other ways to set this up as well. If you're not worried about game engines, you could have duplicate weapons in each hand and just toggle their visibilities for the switch. The critical thing for both methods is that THE CONTROLLER'S GROUP IS CONSTRAINED AND NOT THE CONTROLLER ITSELF. That way you could animate the weapon in the hand as well to avoid breaking the wrist.

Hope that helps!

Unknown said...

WOW GREAT it works!! awesome..

so if both hand grabbing the object i would just animate one hand let the other hand follow right or i have to place it manually from key to key...

thanks alot TJ!!

TJ Phan said...

Cool! Glad that helped, Arthur.

Whether the other hand follows or not is up to you--it could work either way. If you have it follow, I'd again make sure the group of the Ik controller is what's being contrained so that you could animate on top of it. If it's a close-up shot I'd probably do it this way. If it's a slow movement like an idle, I'd do it this way as well.

If it's a fast movement or if the character is switching back and forth between a one-handed and a two-handed grip (alot), I just eyeball it. To be honest, most of my game stuff have been just eyeball'd without any constraints.

One thing I'd keep in mind. Even if my character's holding the weapon with 2 hands, there are many instances where I push the pose to the point where the "following" hand can't make contact with the actual weapon. I think this is ok. I just have that hand "aimed" to where the grip should be. I'd rather do that and have the pose more dynamic than to have the arm over-extended and penetrate through the body. Or worse, end up with a less dynamic pose. Also, it's usually a pose that will be on screen for only a few frames.

Unknown said...

Thanks for the help TJ, it's been awesome... now i could start worrying about the art :)
Yeah, the grouping thing it really solves my problem... before i was having trouble i couldn't animate the object seperately the hand always follow because i parented it to the hand. but now...it's awesome...

Oh, and thanks for the tips of grabbing object with 2 hands i'll keep that in my notes. Yeah I did experience that a lot where the one arm is over extending and couldn't get the pose right. so that's how you did it, Thanks. It really helps me ALOT. Fantastic! THANKS a million!

Arthur

TJ Phan said...

No problem!