Thursday, March 08, 2007

"Animomania"..... (One approach to 3D animation)

Are you new to CG animation, or confused about your workflow? Not sure where and how to start animating and to determine an end point where you could call your animation finished? Have a look at my new Animomania Workflow Tutorial, where I'll take you through a simple scene I created. Hope this helps some of you! :)


Howdy guys!
Here, I'm going to share my workflow with you all and I'll take you through a simple scene.

There were a lot of new folks coming in who are kinda confused where and how to start animating and how to finish it up successfully and efficiently (here's one secret! psss...don't tell this to anyone! This is what I'm trying to learn! And I'm trying hard!!). I hope this little tutorial based on my workflow, will help you all! So, lets roll....


I'm learning this craft we call animation, and I'm trying hard to achieve better results every time. By any means, I'm NOT an expert on any of this, so please bear with me! I still have A LOT to learn!!
This is just how I like to work, and currently this workflow helps me a lot to create better stuff (I may change my workflow anytime later....who knows! Maybe I'll find a better workflow someday!). Over the past one year, I've been learning a lot from the supercool VTS (Video Tutorial Service) created by the super talented master animator and my animation guru, Keith Lango,
which has helped me a lot in creating my own efficient workflow based on my needs.
So, if you like this workflow and if it helps you make better stuff... cool! If it doesn't help you at all, or if its disturbing your mental peace, or giving you a headache, or if you feel like vomiting after reading this... just FORGET it!.... Throw it out of your brain! And remember that, this is how I like to work. It MAY or MAY NOT help you! Maybe you have something better, that helps YOU create better stuff!
Anyhow, I would love to share my workflow with you all in a hope that it helps you somewhere, somehow.....ummmm maybe...I dunno! heh..

  • Few basics:
Key Poses:
Key poses or the storytelling poses define the character, the emotion, the feeling of the moment, the energy, and the performance. These poses or drawings are the soul of your scene, or they are the bedrock to your scene.

Primary Breakdowns:
Primary breakdowns define three major elements of motion....
1) Favoring (what is favoring?? Oh! You're not sure about it? Go ahead and read Keith's "Do Me A Favor" tutorial....awesome stuff!)

2) Overlap and Drag (Wanna learn more about them in a detail? Read Keith's "Breakdowns Can Be Such a Drag" overlaping motion article.

3) Arcs (Do NOT ignore them! They are really improtant to create a good looking animation....)

Secondary Breakdowns:
Secondary breakdowns help you define the motion even more. When a primary breakdown is not enough for the computer to interpolate properly, you add a secondary breakdown, kinda like fill in the blanks, to further define the motion. It helps to define eases, additional overlap, micro anticipations, additional arc definition, overshoot, settle, etc...

  • Close your eyes and ANIMATE..(thinking/planning and drawing...):
Okay, you can now close your eyes and imagine your scene..... Just imagine your character in action... and try to see the scene already done. Visualize what the core of the scene is.
Also, you may wanna create and/or find reference, act the scene out....make thumbnails and share your ideas with others. This step is really improtant! So, don't skip it! The more you plan, the better your results will be. Most of the times I act out the scene and I video tape myself for reference. Its really helpful to get the dynamics of the motion. However, be careful when using references. Don't simply copy it. Look for ways to exaggerate or push your pose to increase its entertainment value.
For this scene, I drew small and ugly thumbnails (the KEY poses or the storytelling poses), just to throw the ideas in my brain to a piece of paper, so that I can see them clearly without mixing them up with some other cool idea that I may have in my head. Next, I draw them more clearly with some amount of detail and draw all the expected (interesting looking), primary breakdowns. I usually like to draw on a piece of paper. But for this scene I used Jason Schleifer's GreasePencil script to draw them directly in Maya. The advantage of doing this is that I can figure out a rough timing and play with it in Maya without much of a hassle.
In this example animation, I could have gone a lot fancier throwing out the legs and stuff. However, I wanna keep this scene as simple as I possibly can. So, I'll just make this guy turn and point at someone. Kinda like saying....." No! You did it!!".....

These drawings certainly help me to visualize better. However, when I get into 3d and start blocking my scene, I'll look for ways to make them better and try to make my poses look more interesting. I may push the poses more or push that line of action further to make things look more interesting.
Next, I may set a rough timing. Remember that at this stage, I like to play with my timing only if I'm using this cool Grease Pencil script, the way I'm doing here....Or else I wouldn't worry too much about timing at this stage, and I'd just concentrate on my posing. Normally, I deal with the timing
and stuff after I get into 3D and after I'm done with my key poses and primary breakdowns.
Anyhow, I timed these drawings in Grease Pencil and it looked like this :

Not too great? Yeah, I agree. However planning like this, helps me to visualize my scene better! The more I plan, the better and faster I get at doing the 3D part. Also, I won't have to figure all this out by selecting the NURBS controls of a rig, and moving it around in space to make a good looking pose. It kinda feels like I'm fighting with the rig. Its a lot easier to draw it out instead of moving the controls around.

  • Posing in 3D/Blocking the scene:
I like to spend some good amount of time in posing my character. Interesting poses are extremely important for effective and natural-looking animation. When posing your character, pay close attention to anatomy (understand the underlying structure) and non cliched "appealing" poses. Watch out for center-of-gravity placement and off-balance problems, as well as twinning or symmetrical poses.

Some guys ask that; "how do I make good looking and appealing poses?" Well.....DRAW! Thats all I can say. Learn the difference between a good and not so good drawing. Learn working with gesture a lot a lot of life drawings. All that helps a lot in posing!! You might say..."HOW? How is it gonna help me make better looking poses? I think that drawing is a big WASTE of time you sucker! I just wanna get into my CG software and start moving those controls around.... its a lot more fun!!" What did you say? Oh no! I completely disagree with you!! And I'm not gonna explain everything here. I just can't!! Or else I'll have to spend two extra weeks writing this tutorial... and that'll make me sick you know! Annnnnddddd drawing is NOT a waste of time, it really helps a lot and its fun! You know, this is just one another BIG topic and I'm not gonna get into it right now. Just take my words, and believe me that drawing does help in enhancing your posing abilities. GOT IT?

You want more information on acting/character enhancement, posing, drawings, silhouettes, etc? Read Walt Stanchfield's notes, and Keith's Power Center and Personality article. I would also recommend you to subscribe to Keith's VTS. Keith has discussed some essential stuff about posing in a lot of his videos. You just can't afford to miss that!

Getting into the technicalities of CG and realizing the workflow (Yo! Maya...ol' buddy ol' pal...I don't want your free in-betweens right now! Thanks for asking!......I'll ask you later, when I need them....):

I like to work and think the traditional way, and my brain tends to work much like a 2D animator. I don't know why, but thats how I am right now! I believe this helps me to think properly and I always feel more organized. So, when I open up my favorite CG software, Maya, I want Maya to work and behave like a 2D animation software. And when I'm posing my character (making 3d drawings), I want Maya to give me JUST the pretty drawings that I create in there. I like to call them "drawings", as Maya is doing nothing but creating a bunch of 2D drawings. After all, everything on the screen is 2D (flat) and they are nothing but drawings! Drawings with realistic looking shades give a sense of depth. We're just using a CG software to create those drawings instead of a pencil!!
So, I make drawings in/with Maya (my high-tech pencil) and I don't want it to give me all the IN-BETWEEN drawings at this time.
In-betweens are mostly used for making the motion smooth and it helps to get rid of that "blocky" feel. And a computer is really great in making straight and well calculated in-betweens and getting rid of that "blocky feel"!

Now, if you make a drawing on Frame 1, and another on Frame 5, in Linear Tangents (interpolation without eases), Maya will simply create straight in-between drawings on frame 2, 3, and 4. In the early days (2D era), lead animators did all the key drawings and the breakdowns and the in-betweeners had a job to make nice and intelligent in-between drawings (as far as I know). Yes, they did everything intelligently! And thats what Maya/computers cannot do! So, Maya is just like your DUMB in-betweener friend....Its really dumb! If you create a drawing "A" on frame 1 and another drawing "C" on frame 3... Maya will record all the data (the attribute values and stuff) from drawing "A" and drawing "C" and find the their middle values and make one middle drawing "B" on frame 2. Maya is really good in doing all this, and its not always bad! Sometimes it really helps, like when creating breakdowns. I'll discuss this in a short while.

Before I start posing my character in Maya, I make sure that it's Default In-tangent is set to "clamped" and its Default Out-tangent is set to "stepped". Now Maya will not create in-betweens or interpolate between frames. And I'm all set to start blocking my scene.

I usually like to start making my poses on consecutive frames 1, 2, 3, 4, 5,......... I just don't care about timing at this stage. I just like to concentrate on my poses. Most of the time, I like to work pose to pose and after I finish all my key poses, I work on my primary breakdowns.

Art of making the breakdowns or transition drawings:

Breakdowns are really improtant! This is what defines HOW you're getting from a point to another or how you're transitioning between the poses. They are the best way to take control of the in-betweens and to prevent a computery look. Breakdowns also define emotion and the intent behind a motion.
I usually don't like to make breakdowns from scratch unless I've to make a wild one. If I make a breakdown from scratch, I might not get a smooth transition. So, I use Justin Barret's "TweenMachine" tool to build my breakdowns. TweenMachine allows me to quickly build my basic breakdowns and in that, I can easily decide its favoring, and then I manually work on them to make them look more interesting or wild, if needed! However, you may not be using these scripts in a production environment. So there is one easy method I've learned from Keith. I just convert the key poses into linear and move them about 4 to 5 frames apart. This will allow me to find one middle position between the key poses and I can easily set its favoring.
So, when I start building my primary breakdowns, I work on the arcs, favoring, overlap and drag. If I make something cartoony, my breakdowns could be really wild! I may even break the rig in my breakdown to create a desired effect. Breakdowns are also called transition drawings/fames, and these drawings stay up there on the screen for just a fraction of a second. So you don't really see feel them! Sometimes I may go really wild with my breakdowns but I'll make sure that its fitting the motion well, its not distracting and its helping me to create a desired effect.
I use a dry erase marker or erasable marker to make dots and track my arcs directly by drawing on the computer screen. Arcs are really important. If you don't work on your arc, the motion may not look believable or natural. So, its really improtant to work on your arcs at the time of creating primary breakdowns.

Creating breakdowns are really fun and at the same time difficult! It tells the computer HOW to move from a drawing to another and you really squeeze everything out of a pose and then into a pose. This is where you let your imagination fly high and you create some really cool breakdowns and create something interesting and cartoony. In fact this is the phase where you create that cartoony/snappy feel. If you're looking for ways to create cartoony motion, you'll have to make proper breakdowns to achieve that kinda result. You don't create a snappy movement by moving things too rapidly in space. You'll have to create proper anticipation, overshoot (depending on your motion) and settle breakdowns to create a sense of snappiness in your motion and make it believable. Otherwise, the motion will look poppy and ugly. So, try hard to make smart breakdowns!

  • Timing (the King!):
Once I'm done with my key poses and secondary breakdowns, I start working on its timing. I don't like to time my animation by selecting those keyframes and dragging them around in the timeline. I use a pencil shooter program called Monkey Jam to time most of my animations. I export all the drawings from Maya to Monkey Jam and then I time them there. In Monkey Jam, I can easily play with my timing and I don't have to playblast everytime to check the actual timing. There is one script called MonkeyShuffle created by Keith Lango. I use that script to export all the frames or drawings from Maya to MonkeyJam and then import them back to Maya with with my timing. It kinda works like a bridge between Maya and MonkeyJam.
However for this animation, I've used GreasePencil to roughly time my animation, and then I manually moved all the keyframes to match its timing.
Always remember to play with your timing! A good timing comes from experiment and experience!! The more you play with it, the better your results will turn out. And this is where MonkeyJam or Grease Pencil help me a lot. They allow me to play with my timing, quickly and efficiently.

So, I timed all my drawings....and this is what I got

Please remember that up till this stage, we are always free to alter the key poses and the breakdowns to make our stuff look more interesting and clear. So, we are always free to adjust anything to make it a better piece. Please note that a breakdown is a child of its key drawings. And it depends directly on these two key drawings. So, if you change one of these key drawings or poses, you'll have to change its breakdowns as well. They are all interconnected!

  • More definition with Secondary breakdowns and some "boundary walls":
Now start filling the blanks and the dead spaces! This is the period where your blocking starts looking like full animation. You define almost EVERYTHING here! You start to define all the eases, additional overlap/drag, micro anticipations, additional arc definition, overshoot, settle, etc... And this is the period where you add those subtle moves which brings all the life into everything. You start fleshing out your animation.

My last step in "stepped mode":

There is one more thing I like to add just after making all the secondary breakdowns, and thats something I like to call 'boundary walls". These are just keyframes you create to make a hold.

For example, if you have a drawing "A" on frame 1 and another drawing "B" on frame 6. And you want to HOLD drawing A for 3 frames and then transition from drawing A to B. To do all that, you might wanna make one copy of drawing A on frame 4. In stepped tangents (Maya), just press the "S" key on frame 4 and you'll get a copy of drawing A on frame 4. Easy! Now Maya will hold drawing A till frame 4 and then transition to drawing B from frame 4 to frame 6.
Now, what will happen if you don't make a copy of drawing A on frame 4? Maya will add straight in-betweens between frames 1 and 6, or it will interpolate directly from frame 1 to 6. You're simply letting the computer animate! It'll look plain UGLY, unless you're intentionally doing that for something. I like to make all these in stepped tangents, and now my animation and its timing are safe behind these "boundary walls"!! Yippppeeee!!!!

Final blocking (in stepped tangents):

This is the final version of my blocking (still in stepped tangents). Now it kinda looks like a 2d animation without in-betweens!

  • Converting into linear and starting to clean-up; Me: Hey dude... Maya! I want your in-betweens now! teeheeee... MAYA: YOU NUMSKULL! I offered you my cool in-betweens a long time ago, but you were acting too smart and declined my humble offer!! Oh well, here you go.... Me: Ummm....errrrr....errrr..errrr....okay!
I start cleaning up my animation as soon as I convert into linear tangents. Yes, clean-up!! You can't get away from clean up in CG..... And cleanup takes forever! Few months back, I remember I made one animation for a forum competition, and it turned out to be a crap! WHY???? Because I didn't clean it up the way I should have! The result was really poor, OOOHH!! (crying!!)..... You know, it really makes me CRINGE! So you can't get away with clean-up in CG, and thats what a lot of noob animators do as they're not sure of the importance of proper clean up! And no doubt I was one of them! heh....

Kill that ugly bump!!.....but wait! It could be your friend!:

Now, how to clean up? Well first off, when I convert into linear, I double and triple check all the in-betweens and I make sure that there are ABSOLUTELY NO unwanted in-betweens! And then I recheck all my arcs and make sure that everything is working the way I want them to be. After doing all this,
I select my pelvis control (because thats where all/most of the motion starts) and open up the graph editor (the beautiful spaghetti box!) and I then I start to clean up its each and every attribute. Then I move up the spine, neck, head, shoulders, arms, legs and clean them all up.
Well, you may ask....." How do I do all that, and what the hell should I do in the graph editor...whats the objective of it? And what should I look for?" Well, you try to make those graph look pretty, BUT.......not at the cost of your animation and drawings! Never ever play with your graph editor BLINDLY! This could really hurt your animation! So, open up the graph editor and make sure you can see the view port clearly enough and figure out how moving a keyframe in the graph editor affects your pose/animation and its feel.
So, I may not change something because I believe in my drawings and I'll cross check before moving any keyframe around. I select my keyframe and move it UP and DOWN. Don't move it horizontally or you'll change the timing! There could be spots which may look ugly, but don't change that just to make your graph look smooth or flowing. There could be bumps in your graph, and there could be some reason for that. Find out, why is that place bumpy and whats making it bumpy. Open up the graph editor so that you can see it as well as the render camera viewport. And try moving that keyframe UP and DOWN. Now OBSERVE! What in the world is it doing?? Can you change it and get rid of that ugly bump? If that bump is good for nothing, or if you think that changing that will not degrade your animation/drawing, then go ahead and make it smooth! You can see a bump over here in the picture below, and I don't wanna mess with that. I've already discovered that its there for a very good reason. So, I'm not changing that. That bump is NOT my enemy, its my friend! Its making my animation the way I want it to be. Its giving it a flavor that I like! So, I'll keep it. I'll also make sure in the graph editor, that all my slow- ins and outs are working properly, and also I'll keep an eye on those moving holds! If I need a moving hold somewhere, I may simply move a keyframe up or down to make that little moving hold to add extra life in my animation. By working in linear mode in the graph editor, you force yourself to carve the motion in the curves. If you don't set breakdowns for your ins and outs, it will be apparent that you're letting the computer animate for you. The linear curve makes your motion look mechanical, and you may have to set more keys to avoid that look.

I made up these equations, try to keep them in mind:

Good animation + Good looking graph = Great!!

Good animation + Ugly graph (Of course, having a good reason to be ugly) = Well, ummmm......Great!

Bad animation + Good looking graph = Bad result! This will not do.

Bad animation + Bad looking graph = This really stinks!!

It took some time and I cleaned up the graph editor. And after spending hours and hours fixing all the curves in the spaghetti box, this is what I got:

Oh yeah! It takes a lot of time to do all this. But you need to do this in CG to make your stuff stand out!

Spliney, slimey.....Yummy! :

After spending hours cleaning up in the linear mode, I convert everything into spline. And I start cleaning up my animation in spline. I've worked hard in the linear-pass clean-up. So, I need not to worry about this spline-pass clean-up.
I open up my graph editor, and this time instead of moving those keyframes up and down I'll just adjust their tangents to clean them up. In the linear-pass, I've already made sure where all of my keyframes need to be. So most probably I'll not change their values this time and I'll just work on their tangents to make the graph and the motion look smooth.
I may also delete a few extra keys. And that'll be just fine if that doesn't change the graph much. To do that efficiently you may wanna do this:
In the graph editor in Maya, right click and and goto View-----> and check "Show Buffer Curves". Now select a keyframe and move it or delete a keyframe. You'll be able to see the original curve behind it! Its really handy when deleting those extra keyframes. Just make sure that deleting a keyframe is not changing the feel and flavor of your animation!

Now, after working hours and hours on graph editor, my curves start to look much better and I've also made sure that nothing is degrading my animation performance. And whatever the step I take, it is ONLY to improve my animation! Now my graph starts to look something like this:

Please note that cleanup takes a lot of time. And its perfectly normal if it takes 20 percent of your time to get up to the point where its cleanup time and the other 80 percent of your time is cleaning up. This cleanup process from linear to spline pass really takes forever! So, don't skip this cleanup part, especially when you have time in your hand! This will really make a lot of difference and help you shot stand out!

After cleaning up and pushing some of the poses directly in the graph editor, this is what I got (the final pass in spline):


So, everything is working the way you wanted, right? Now ask yourself..... "Is this what I want to see?" If yes, then after all the hard work you're finally ready to render out your animation (if you want)!

Final rendered-

Thats all folks!
I hope this tutorial helps you somewhere! If you have any questions/doubts, comments, or if you just wanna say "hi", feel free to email me and/or post a comment here. I'll try my best to reply back. Please note that I may update this tutorial as I develop and learn new techniques.

Special Thanks:
I would really love to thank these good folks, if it weren't for them I could have never wrote my workflow tutorial....
Keith Lango: For his awesome VTS. I've been learning everything from him. If it weren't for you Sir, I would've never even had the slightest idea of what animation really is!

Tim Oberlander: (my good friend and a cool animator): For his cool Basic Guy rig, and his helpful and constructive critiques. Its always fun animating your rigs, Tim!

Jocelyn Cofer: (animation mentor student/my good friend and a cool animator): For sparing time from working on her AM short film to see my animation and giving very helpful and constructive critiques.

A special friend (animator): She is the one who encouraged me to write all this! Thanks!! heh.....

Download Animomania Workflow Tutorial ZIP(1.1 MB)

"Animomania" (my workflow tutorial) © Amrit Derhgawen (2007)


Amrit Derhgawen said...

WOW! Keith Lango liked it!! Yipppieeee!!!!!!!! :)

this is really cool!

Unknown said...

WOW! Thanks Amrit! This is really awesome of you. I will tell others about your page so they can see this great info! It is always really great to see how others approach a scene, Thanks again.

Amrit Derhgawen said...

Thanks Saul! Glad you like it :)


Unknown said...

Really great work! I'm a beginner animator and this is going to be really useful. You are a good "teacher"
(explaining "why" you di stuff and not only "how" you do) so keep it up!

(sorry for my crappy english)


Amrit Derhgawen said...

Hi luca! Welcome to the animation world. I hope this tut helps you somewhere in your workflow. Thanks for the kind words...glad you like it! :)


Anonymous said...


keep rocking


Anonymous said...

ur amazing bro!

Anonymous said...

Hi Amrit! After reading your great workflow... just wondering that do you key all the controls in your breakdowns or only the controls u need? Thanks!


Anonymous said...

Hi there Kendall,

Yes, I usually set KEY on all the controls of the character rig.

Cheers! :)

Deepak Arasu said...

This tutorial is really awesome. Thanks a lot. I am in the process of finding myself a work flow and this should definitely help.

Just in case if you have time, please do visit my blog for my works. Would be glad to hear your comments

image editing services said...

Excellent tutorial. Thanks for sharing.

JP said...

Hey Amrit

Great workflow tutorial I was wondering where I could find the melscript you were talking about that allows you to draw in maya?