Showing posts with label maya. Show all posts
Showing posts with label maya. Show all posts

Feb 16, 2011

Quick Trick: Draw your Timing

Not too long ago I started using 'drawings' at work to figure out timing beats for certain animated shots, and it was one of those great moments when you discover something that you instantly use over and over again, so I thought it best to post the process here on Flip.

I found myself looking for a fast way to record a timing reference for certain shots, I wanted a way to quickly get an idea of the timing of certain actions or beats without having to go into blocking and actually start posing stuff out, but also without having to go to the reference room and go through the motions of recording myself, converting video to Linux and basically taking a load of time from my schedule. For me, when I'm figuring out a shot early on, I pretty much use the basic building blocks of story, posing ( with staging ) and timing to construct my blocking. I really enjoy posing characters, in fact its my favourite part of animation, but I find that having some kind of 'map' of the timing in a shot early on can be a tremendous help, because then you can really take the time to construct those poses with care.

So to cut a long story short, we have the option to draw over our shots in the camera view, and do very basic animation this way, and I found a way to mirror this specific process in maya one to one using fCheck. Instead of drawing the animation however in the traditional way with sketches, I simply move my mouse around to record the 'timing' of the shot, or particular beats or actions in the shot and it records that timing in the form of a little dot moving around on the screen. I`m not thinking about shape or anything like that here. After deleting the drawing and doing a bunch of takes, I usually get a decent feel for the timing of an action and I start using the specific frames the dot hits extremes on to time my poses in stepped blocking.

To make this clearer I made a few examples using maya and fCheck to illustrate what I mean, this is pretty much exactly what I see doing a similar thing at work:


This shows a timing idea for the wingbeats of a large flying creature like a dragon or something similar.


In the above example, I can get an idea pretty much instantly of the timing of those wingbeats without having to do any posing in the shot at all. All I am doing is drawing with the mouse. I can make the timing as even or as varied and complex as I like. Once I have some timing that I like, I can use the movement of the dot as a guide for what frames I need to start posing my extremes, for example, the up, the down, and a very good indication of the ease-in and outs that I need to get the feel that I'm going for.

To 'record' your timing using fCheck in maya, you do this; Set your playblast output as fCheck and playblast a blank screen with as many frames as you think you'll need ( usually the exact length of your shot ). Press play when fCheck loads, and as soon as you press and hold the right mouse in windows, it will start printing a small dot or line depending on how fast you move the mouse per frame.. this results in the perceived capture of your mouse motion. Luckily enough when you choose 'save animation' from the fCheck menu, it saves these drawings into the frame renders so you have it for good.

Agreed, the application of this idea is limited to certain actions, but let your imagination help you here... I have used this for very obvious and easy things like jumping and bouncing, but its also fantastic for subtle things like eye darts and weight shifts. You will start to find that the little moving dot often makes no sense to anyone but you as you start to use it to map more abstract actions.

Basically, anything that can help us "see" our animation quicker before we labour over posing and spacing is gold.

Here are a few more examples I did quickly for different timing beats:


( a samurai style decapitation! - the timing is clear for the antic, the swing and the head drop/bounce. Of course, the beauty of this method is trying many different variations really quickly until you have one you like. There is an indication of the arc on the sword and the spacing with regards to how far the sword/head moves, but this is really not important... its the timing I'm looking for. )




( Basic up/down timing for a really proud horse as he trots along )




( Angry guy picks up his pint, necks it, and slams it down again )



( A couple of different head turns )

Its possible to visualize a variety of different timing beats using this technique, so give it a try and see if it lets you experiment a little more.

Sep 23, 2010

Crash...Burn

A few people have e-mailed me now about shotView being broken in the new Maya 2011.

I apologize to those of you who may have had trouble with this. Now that I don't use Maya for work, these things can go unnoticed for a while...

The issue people are reporting is the preferences window resizing itself to some stupidly big numbers, so you basically can't save any preferences. I recently loaded it up in Maya and figured out the problem, but I just need to find some time to fix it and update the script on Creativecrash.

For those of you interested, I will fix the problem within the next 2 weeks.


Apr 14, 2008

AnimFood

I recently made a weird little maya script ( I have a habit of doing that unfortunately ) and I'm finding it super useful so its time to share...

Like most of you out there, I like to scout around the net looking for tips tricks and general advice on animating. From time to time you find some really great stuff, and it can be very beneficial just to take your lunch break or whatever, and read these things soaking up the info.

Its got to be said however, I find it hard to remember everything!

Over the last few weeks or so at work, I've been building a little tool that will just throw me random quotes, ideas, little nuggets of info, tips tricks, checks etc right there in a little maya window. So when I'm animating, particularly on the acting shot I'm doing at home, I have this little thing open and I click it once in a while and get some pure gold advice to keep me thinking, give me new ideas, or just inspire me to think about what I'm doing in a different way.



So the stuff in there is condensed from a number of sources, from a variety of different people just to mention a few:

Frank & Ollie,
Brad Bird,
Ed Hooks,
Carlos Baena,
Bobby Beck,
Glen Keane,
Walt Stanchfield
John Lasseter,
Jason Ryan,

and a whole bunch of other people, including a few of my own. Currently there are near on 300 separate entries to keep you going!

I will be updating the entry file for this tool as often as I can, so there is a link in the GUI where you can check to see if you have all the latest entries.

Aug 6, 2007

Four Legs are Your Legs!

I am one of these lucky guys who gets to work with a really great Technical Animation Director - Javier Solsona, or "Goosh" as you may know of him. This guy has been connecting, constraining, multiply dividing and parenting for years! and can teach us all a thing or two about how to make a decent rig. In fact, he kicked off the whole "free rig" thing with the release of "PackageMan" a few years back. When Goosh pulls out his nurbs controllers, you know he's a man not to be reckoned with!

Well.. after a lot of headaches and hard work, Goosh has released an new quadruped rig that is freely available for download from Highend3D.com ... if you're going to Siggraph this year, make sure you check out his three part masterclass, that will give you a priceless insight into how it was created.

I worked closely with Goosh during the development of this rig ( despite the fact he did all the work of course ) and I can guarantee you he pushes "animator friendly" and "functionality" to the limit. He is constantly looking to give the animator all the control he needs - whilst seamlessly removing the brain ache factor for you in the background.

Go download it and have a play around. The link below gives a little more detail on what you're getting ( there are a few minor restrictions )... but check it out and be sure to post comments about what you think!

Advanced Quadruped Rig



( yeah I know I used this animation before on this Blog - but come on.. this one's rendered ! )

Jun 4, 2007

Easy Move

I wrote a tool to help me pose things around the screen a little easier, and thought I`d share it.

When using the translation manipulator, I sometimes get annoyed with how it can make you work a bit too hard to get your object where you want it. I tend to use the world space setting, because I find if I use object mode, its too restricted by the orientation of the object, eg:



If I simply want to move the character in his forward direction ( Z - blue ) Its easier to use world space setting because if I use the object mode ( that does have his "true" Z forward axis ) then I end up getting unwanted upwards translation as I move his hips forward because of the rotation of that controller.

World space is good, but it also has its problems. If I want to move the object along an axis that isn't aligned to the world, I have to do as many as three separate movements, e.g



So in this example I have a character climbing up a ramp. The ramp is at an angle, and not directly aligned to the world. I need to translate the characters hips in the direction of the arrow, so I can start posing the next key of his climbing up animation.




You can see that both world and object ( local ) settings are pretty useless because they don't represent the broad direction of movement that we want the character's hips to travel in ( i.e, they don't represent the orientation of the ramp ). In this case, using either world or object mode, I would still have to modify X Y and Z to get my hips where I wanted them for the next pose. I could use the square in the middle of the manipulator, but this does a "screen space" translation, and I find it hard to work with because I cannot drag a specific axis. The feet also are at arbitrary rotations, so they also have exactly the same problem as the hips. It seems like a lot of work translating objects around in this way.

This is where the script becomes very useful. I can set an object that I use to represent my direction of travel.. or something that describes the overall "direction of movement" that I'm animating in:



So here I've made a locator that represents the direction that I want the character to move in.

I can then use this locator as a reference to override the translation manipulator on whatever object I now select.



So now I have a manipulator that represents the direction I want to translate my objects in. Its easy for me to simply translate the Z axis and have my character travel forwards, upwards, and in the direction of the ramp all at the same time! this is now set for every object I select - so it will be the same for both feet in this example. I can even select all objects ( the hips, and both feet ) and slide the whole character up and down the ramp...
If I was animating this little sequence, I could use the locator as a "translation reference" for pretty much all objects, for that patricular "climbing" section of the animation. Once the character gets to the top of the ramp, I could change the position and rotation of the locator to match the broad direction of whatever move comes next, and so on... its much easier working this way...




There is also an option to use a custom "screen" oriented manipulator, that allows you precise control over the axes. You may want to use this if you simply want to say pose the translation of the hips a little higher in a 2D way relative to the frame - without having to worry about any orientation already on the hips.

The script has a simple four button UI that lets you switch between world, reference object, and screen space translation, and also a button to tell the script which object you are using as your reference object. You can assign each mode to a hotkey if you prefer using the following commands:

moveObjectRel "UI"; - launch the script with the UI.
moveObjectRel "screen" - perform a screen relative translation.
moveObjectRel "object" - perform an object relative translation ( like in our example ).
moveObjectRel "setRef" - tells the script the selected object is your direction reference object.
moveObjectRel "world" - set the translate tool back to its default world setting.

You can grab the script here: moveObjectRel.mel

Apr 6, 2007

Quick Trick: Tap Your Timing !

The title of this post might be a little misleading. I'm not talking about tapping your foot whilst you animate, rather a quick and intuitive way to adjust your timing between keyframes as you work ( in Maya ). I setup this little trick a few years ago and I can't live without it now...

I created two hotkeys that enable me to alter the duration between keyframes in the timeSlider. So say I had an action that hit a pose on frame 17, I can use these hotkeys to change my timing one frame at a time, so I can see how it feels when it hits on frame 15, 20, 23 or whatever really quickly and easily ( without having to select keys, slide things around in the dope sheet, or move keys around in the graph editor ).

here are the hotkey commands:
  • // add a frame ( I have this assigned to the + key )

    timeSliderEditKeys addInbetween;
  • // remove a frame ( I have this assigned to the - key )

    timeSliderEditKeys removeInbetween;


The image below explains how to use this idea:

Dec 21, 2006

The importance of cleanliness

I didnt really want to start off this blog with a "techie" post, but recently its become very clear to me how important a good clean visual workspace is, and I wanted to post something up that people will find useful. By the way, I don't mean making sure you wipe those coffee rings, or vacuum the crumbs out of your keyboard, I'm talking about visual clarity in all that clutter that fills your screen when animating.

Game animation comes complete with a worrying, but unavoidable lack of emphasis on silhouette. Practically every game today is set in a 3D environment, and characters and events are often seem from almost every angle you can imagine, as well as from vastly differing distances. Because of this I've nearly always animated without a camera reference or a set "shot" that is designed from layout or storyboard, working merely in a perspective panel and orbiting constantly around my character as I create poses and movements. Due to working in this manner, I've never really animated in a 'pose to pose' way or spent much time thinking about it.

Then of course, when you start to animate a shot from a pre-determined viewpoint, the power and absolute necessity of silhouette, staging and composition hit you like a train wreck. I noticed that Maya has no real "animation viewport" and found that working in tear-off panels, or trying to mix and match different views within the program was messy and confusing:


mess !

To remedy this I bought another monitor and wrote the "animation viewport" I feel is crucial to working on a cinematic shot. I have one screen setup as the interactive viewport where I rotate around freely and manipulate the character controls, and another screen almost entirely devoted to a single clutter free and clean representation of the shot I am working on. It works wonderfully. I find because of this I am much less hindered by things being "in the way" and switching between different views and states with Maya... that ultimately gives me more brain time to concentrate on the performance. ( by the way - you don't have to fork out and go dual LCD. I have two 20" CRT monitors, and yeah they take some space but they cost me under $200 for both, and work like a charm. )


much cleaner and more workflow intuitive ( the script creates the large window with the black borders )

I have put this tool online so you can download it and use it if you like. The link has more info on some of the features. You can grab it here:

shotView for Maya

If you're anything like half as messy as me, this will help you out a treat.