Pages

Sunday, December 30, 2012

Some helpful scripts for Maya

Knowing basic scripting is always useful. Sometimes, I find myself searching how to do something in a 3D package just to realize the program doesn't have the feature. When those cases arrive, I know it's time for some coding.

My knowledge about scripting languages (basically MEL and Maxscript, but learning some Python now... ;)) is basic to intermediate. I don't know the code itself, but I know how to break apart an existing script, understand it and use it to make my own. It's easy for me to understand what some commands do so I can use them the way I want.

When working with Maya, there are some things that would made my life easier, so I decided to write some simple scripts to help me on my workflow. Below are some lines of code that you can grab and use as you like. I have tested these scripts in Maya 2010 (64-bit), so I don't know if they work on other versions.


Select children 

This script will select all the children controls starting from the one you have selected.So for example, if you want to select all the finger controls, just select the first control on each finger (that would be the control closest to the hand) and run the script.

For those of you familiar with 3ds max, this would be like double clicking a control.

string $sel[] = `ls -selection`;
string $namespace = `match ".*:"  $sel[0]`;
select -hi $sel;
string $selChild[] = `ls -s -sl`;
$selChild = `stringArrayRemoveDuplicates $selChild`;
select -r `listRelatives -p $selChild`;

Limitations:
This script will select only controls that are based on SHAPES, so if your rig have some Nulls or other node type as a control, the script won't work.


Playback selection

Sometimes, when working with several viewports at the same time, the playback lags. In order to reduce such lag, this script will enable/disable the playback on just the selected viewport.

Run the script to toggle between playback in ALL viewports or just in the one selected.

if (`playbackOptions -query -view` == "active") playbackOptions -view "all";
else playbackOptions -view "active";



Add keys without disrupting the curve

I got this line from Kiel Figgins at his site while searching for a way to add keys in the Curve Editor without disrupting the curve that I already had.

channelBox -e -exe "setKeyframe -i -at \"#A\" #N;" 1 $gChannelBoxName;

This is the link to Kiel's reference of this command: Link.


Incremental Save

There are a lot of scripts that do this, so I decided to do one too! Nothing special with it, just saves the file with an incremental number at the end each time the script runs, e.g. if the file name is "Test.mb", after the script it will be "Test_001.mb".

Due to the size of the script, I decided to create a .MEL file. To run the script, place the file in your script folder (C:\Users\username\Documents\maya\mayaVersion\scripts) and add a button in a shelf with the following line (you will need to restart Maya for the changes to take effect):

source "kronIncrementalSave.mel";

Link for Incremental save file: Here

Limitations:
The file has to have a name, it can't be "untitled" or else it will save the file as "unknown_001.mb". Also, for some reason that I'm still trying to debug, the first time you run the script you will have the following error:

Error: Invalid call to "substitute".  Check number and types of arguments expected by the procedure.

I don't know why is that, but if you run the script again it should work fine.


Anyways, feel free to try them and if you want to share them, do not forget to give proper credit. ;)

Cheers!



Friday, December 21, 2012

Toon-articulated reel

This is a great demo from Cedric Bazillou of some new ideas for rigging toon characters. I find the Geodesic weight node to be really cool, but not applicable (yet) to video games.



Articulation reel: Toon work-out and tools integration in a deformation rig from cedric bazillou on Vimeo.

Found via Rigging Dojo.

Enjoy!

Saturday, December 15, 2012

Animating Realistic Sword Fights

I just finished reading an article at Gamasutra on how to properly handle a weapon during combat. Here's the link to said article.

It's co-written by an expert swrdsman and what he says applies to both how to properly handle a sword (and the correct stance for it) and some considerations on the technical stuff, like when rigging props.

A must read.

Enjoy!

Wednesday, December 12, 2012

Rotation Orders for Animators

The video below shows how to correctly switch the axis orientation according to the needs of your shot. It's also a great explanation of the importance of it, which most of the times goes unnoticed.



Rotation Orders for Animators from Brian Horgan on Vimeo.

Here's the link for the script in Creative Crash: zooChangeRoo

Also, check Brian's website. Full of useful tools and video tutorials.

Enjoy!

Wednesday, December 5, 2012

A look at the animation of ParaNorman

Here's a look at the animation of ParaNorman, explained LEad Animator Travis Knight.

He says something that I find is true: Bringing a character to life is something very fulfilling.



Enjoy!

From Thinking of Animation

L.A. Times Roundtable Discussion: Animation

This is a great discussion with the directors of all the "biggest" animated films of this year. I have to say that after seeing this video, I'm a big fan of Genndy Tartakovsky.



Enojy!

Monday, December 3, 2012

The Evolution of Jafar by Andreas Deja

This is a great post from Andreas Deja about the evolution of Jafar, for Aladdin.

I strongly recommend to follow his blog, it's a great source for understanding posing.

The Evolution of Jafar:






Enjoy!

Friday, November 30, 2012

How Bird Wings Work

This is a great explanation on how the wings of a bird work. Really enlightening...




Wednesday, November 28, 2012

Some vids for you!


This interview is really good. That scene from Tangled is one of the best in the movie!


JoeBowers Interview from Frame By Frame on Vimeo.

This link here is the Vimeo channel of Victor Navone. You can find the reels of (almost) all the movies he has worked on, plus some personal work.

And finally, some words for my fellow game-animators from Jamaal Bradley... His last phrase resumes it all! :P



Let's talk about Games 007 (Jamaal Bradley) from iAnimate on Vimeo.

Enjoy!!


Friday, October 19, 2012

The Making of Hotel Transylvania

Here is a link that show the style of the animation for Hotel Transylvania. It's pretty amazing how much they have pushed the rigs...

The Making of Hotel Transylvania

Here's the trailer in case you were leaving in Mars and didn't hear about this film... ;)


Cheers!

Paperman Breakdown

 This is a great video showing the tech behind Disney's Paperman.

After watching this, I believe this will be the future of 2D animation as this kind of tech becomes cheaper and more affordable for other studios.

Paperman Breakdown

Paperman Poster

Enjoy!

Wednesday, October 3, 2012

Fake it 'till you become it!

This is a very nice speech that a collegue at work shared with me. I think it's a good advice for students applying for a job or on that "always scary" first job interview.




Enjoy!

Wednesday, September 26, 2012

MotionBuilder review coming... But not soon.

I'll be using Autodesk MotionBuilder for my next project at work, so I'll be able to give a review and compare it to 3dsmax and Maya. But first, I'll have to know it better than I do now, so the review won't be coming any time soon.

Cheers!

Tuesday, September 18, 2012

A couple of useful links

Here are a couple of useful and interesting links. The first one is an Aaron Hartline (Pixar Animator) interview at Schoolism, which I really enjoyed. He explains all the things he did to get into Pixar and gives some interesting advice for young animators. There are other interviews that are worth to check out, specially the Michel Makarewicz one.

The second link is a podcast with a crew of animators from Rhythm & Hues (via Speaking of Animation). Also very interesting and very informative about how things are done at a VFX facility.

The last one is a website similar to the Onion, but for animators.

Schoolism: Interview with Aaron Hartline

Speaking of Animation Podcast: Rhythm & Hues

2DayInAnimation

Enjoy them!


Muvizu in a nutshell




No animation experience necessary. Just tell your character what to do.




Original post from Spungella.

Saturday, September 8, 2012

My first 2D Animation: What I learned

Recently I had more spare time at work so I decided to make a 2D animation. First I'll show you the animation I did and then I'll discuss some differences between 2D and 3D. It's a 10 second animation running at 24 fps. Since I was super lazy, I did it at 12 fps and then exported at 24, so the animation is not very smooth. Check the video below:



Note: Done with PAP4.0.

Not great, but not crap either. It's OK I guess. I should add that I have always been a 3D guy. I learned how to animate in a computer, using 3dsmax and a mouse, so 2D animation is very rare to me.

So, to the subject of this post: What did I learn from doing 2D animation?

There are a couple of things that I have learned from this little 2D test I did that will apply to animating in 3D (things that I know but I don't often do):
  • Planning is SUPER important
  • Only animate what you see through your camera
  • Take care of all your frames!  
I'll go through each of this subjects...

Planning


When I started my animation, I really had no idea what to do. I knew it was going to be a stick figure, but that`s it. So, I decided to start with a running cycle. Then, I said "he should come from somewhere", so I did the first part, when he lands. Then, I added the jump, and finally, I thought it was a good idea to end with a funny note, so I put a wall in front of him.

As you can see, zero planning. I was going with the wind and my mood. And I paid the price for that. I had to redo several frames at the beginning of each sequence to make it fit with whatever was coming before or after. And that was time I spent fixing things, not creating. In 2D animation, I believe planning is even more important than in 3D (not saying that is not important in 3D, it is, VERY important).

But you may ask, why is MORE important? Good question! In 3D, whenever you want to change something (a pose, a sequence, etc) you select the controllers, remove the keys and start over. In 2D, you actually have to erase everything! That's the equivalent of removing your character from the scene! For those that draw fast, it should not be a problem, but for most people it would. Let's say you want to change the way the arm reaches a cup of coffee... In 3D you erase the keys or adjust the curves, but in 2D... BOOM! Bye-bye arm. Restart.

So, I believe in 2D, knowing what you want to do is the most important (again, not that in 3D is not, because IT IS!).

One viewport


When doing my 2D animation I realized the importance of working with just one camera (unless your working for video games and you're doing gameplay animations). Taking care only of what you see through the camera can save you A LOT of time! I mean, why should I animate the feet of a character in a close up? Nobody is going to see it. Sure, in Perspective view the animation it's going to look silly, but you should not care. As long as the final product looks good, you should not care about the out-of-camera controls.

Seriously, train yourself to do that, you'll start to animate much faster.

Take control of your frames! All of them!

In 3D, when you adjust a curve of a control, you can foresee the way it will behave in the frames that follow. You don't have that in 2D. There is no interpolation in 2D, since the computer is even dumber in 2D. You will have to manually adjust all your frames, for every part of the character (at least every part that is shown through the camera).

But this characteristic has pros and cons: Adjusting yourself all your frames will give you much more control over what you want to show, however, it's much more work too. You can also do the same thing in 3D, but it's much easier since most of the time you won't need keys in every frame, i.e. the computer will interpolate the trajectory of the controller between two frames.

Other differences


In 2D you don't have rig constraints. You don't have attributes to animate, no stretch control, no IK/FK switch, not Global/Parent options, no gimbal locks, etc. No technical limitations. You're free to do whatever you want with your character and there is no stupid constraint or limit to tell you otherwise. Need a prop? No problem! Just draw one. Knee is popping in your walk cycle? No worries, redraw the leg! 2D gives you that kind of freedom, but it might shot you back if you don't know how to control it.

Which leads me to another difference: Volume. I found it very hard to keep the volume of my character, specifically the head. In my 2D animation, I realized that the size of the head of the stick man was getting smaller by each drawing. I had to correct that, but again, it was time spent fixing, not creating. Keeping volumes in 2D can be a very tricky business.

One last characteristic is also the ability to add characters if needed to the scene. So let's say my running stick man bumps into a bigger guy instead of a wall. In 3D, I'll have make a concept, model it, rig it and animate it. In 2D, just draw it. That is a HUGE advantage over 3D!

So overall, I believe that 2D animation gives you a better control over you animation and your scene, but is much more demanding than 3D. When animating in 3D you just have to do that, animate. In 2D, you have to consider other things like volume, what you camera angle is (some camera angles must be crazy to animate in 2D!), fps (it's relatively easy to switch between frame rates in 3D), etc.

However, those animators who have a 2D background will always have the upper hand over 3D animators, in the sense that they already know some tricks that serves them well in all types of animation, like the importance of planning and taking care of all your frames. You can't let the computer interpolate anything in 2D because it can't. And the less involved your computer is in your animation, the better your product will be.

Cheers!

Tuesday, September 4, 2012

Bat Man of Shanghai

I know this have been out for a while, but it's just amazing the quality of the animation!

Monday, August 20, 2012

Thursday, August 9, 2012

A fox tale (Animation)

It's amazing that this is student work. The quality bar is getting higher after each year...

Friday, July 27, 2012

AnimSchool Webcast: Jeff Gabor

This link has been around for quite some time now, but I think is worth posting it here too.

This is the link for the Spungella page, that has all the videos in one page. Enjoy!


Spungella: AnimSchool Webcast: Jeff Gabor


Wednesday, July 18, 2012

A couple of progression reels

I found these two progression reels from crazy animators Jeff Gabor (Blue Sky) and Jamaal Bradley (Disney). Jeff shows his tango shot in Ice Age 3, while Jamaal shot is a dance/sing shot in Tangled.

Enjoy them!




3ds Max vs Maya: Part 3, Everything else!

The final part of this (looong) review is... EVERYTHING ELSE!! I will compare some animation related features on both programs and show some other things that one program has but the other does not.


Trajectories

This feature is some of the most important ones in 3dsMax or Maya. Trajectories show you the path of an object in the viewport. It's very useful for checking your arcs, for example.

In both programs, trajectories work pretty much the same way, but there are some options that differ from one to the other.

In Maya, the trajectory or Motion Trail is another object in the scene. You can select it and move it, scale it or rotate it. You can change the type of line you want (locators, point or line) and whether or not to display the frame numbers. That's pretty much it.

 Motion Trail options in ChannelBox


On the other hand, 3dsMax allows you to do much more. First, there is a sub-object level that allows you to modify the curve itself! This will affect the position, rotation or scale of the object. You can add or delete keys into the trajectory itself too. I believe this is pretty handy because it allows you to tweak the arc of the object by moving the trajectory.

Trajectory options in 3dsMax


In the end, both tools serve the same purpose, but I think 3dsMax trajectories tool is a bit more useful than Maya's.


Align Tool

Maya's Align tool is, in my opinion, one of the worst tools the program has to offer. I know a lot of people that just parent constraint two objects so they align to each other and then remove the constraint (more on that later). I mean, is not that the tool doesn't work or anything like that, it's that is not very user friendly (again, this is MY opinion, you might think differently about it and I'm cool with that).

Most weird align tool!


When you want to align two objects together, after you select the Align Tool from the Modify menu, there is this bizarre box that asks you what do you want to do with it, i.e. how do you want to align the two objects. I guess once you get a hold of it, it's easy, but lucky me, there is this little script that brings 3dsMax align tool into Maya. :)


3dsMax Align tool is much more simple and user friendly. It asks you what you want to do in a way you expect. It also snaps the two objects by default, so it's nice to see both objects aligning together when the tool is called. You also have the Quick Align tool that snaps two objects in position only, which is cool.

Well design align tool

For me, if not for the script I mentioned earlier, this one would be a 3dsMax winner by far.

Constraints

Constraints are used to make one object follow another object that is not it's parent. One thing to have in mind about constraints is that they overpower the real parent of an object. For example, Lets say Object1 is parent of Object2. But Object2 has a position constraint to Object3. The hierarchy for this example will look like this:

Hierarchy for parent vs constraint example

In this scenario, Object1 has no impact on Object2, even if its the parent of the object. Object2 will follow Object3 only because constraints overpower parents.


Constraints are very useful and they are heavily used when creating rigs.

Now, I won't go through every single type of constraint in each 3dsMax and Maya, but I could certainly make a comparison table.

Constraints comparison table

This little graphic shows the different types of constraints available on each program and a comparison of what are the different names for each constraint type. Both programs have pretty much the same types of constraints but there are some more specific constraints in each program. For example, the Attachment Constraint in 3dsMax constraints an object to a single polygon in a mesh (not all types of mesh are accepted though).

One thing that you will have already noticed is... Which is the equivalent of the Path Constraint in Maya? Good question! The thing is, in Maya, the path constraint is not in the Constraints menu since (I believe) is not consider a constraint but an attachment. You can find it in the Animate menu, here:
Path Constraint in Maya (not in Constraint Menu!)

Maya's Outliner

Outliner!


Maya's Outliner is a very underestimated tool, specially by newcomers or artists switching from 3dsMax to Maya.

The Outliner is a tool that will show you everything that is on the scene: from cameras, to lights, meshes, locators, etc. It kind of is the equivalent of a rig picker, but for the whole scene. It also allows you to do several things, like parenting two objects by drag-n-drop, remove constraints, find a specific object in a hierarchy, etc.

3dsMax 2010 version does not offer an equivalent for Maya's Outliner. I guess the Scene Explorer would be the closest but it doesn't match the amount of features the Outliner offers. There is a script for 3dsMax that creates a very similar Outliner tool that can be found here. Great tool and adds some new features that Maya's Outliner does not have, which is pretty cool.


Final Conclusions

Both 3dsMax and Maya have certainly some pros and cons, and in some cases one has a tool that the other does not have. However, I find that there is no real drawback in changing from one to the other. I know animators that produce high quality animation on both of them.

I guess the only thing that you have to get used to is adapting your workflow to work for both of them, which might be the case if you work in the video game industry.

One thing I would suggest to all artists that generally work with both programs: DO NOT CHANGE YOUR HOTKEYS TO REPLICATE THE OTHER PROGRAM. I did it before and it's a pain in the butt for someone else to show you something in your computer, since all hotkeys are messed up. Learn to differentiate both programs and imprint each set of hotkeys in your brain. If I did it, I'm pretty sure you can!

Thanks for reading!



Wednesday, June 13, 2012

Comics Art

I found this page with some crazy art from different comic book licenses.

Best Art Ever (This Week) - 06.07.12 - ComicsAlliance | Comic book culture, news, humor, commentary, and reviews

The Captain America one is very Samurai Jack-ish... Love it!


Wednesday, June 6, 2012

Wednesday, May 30, 2012

Kramer vs kramer: Best scene

What do you get when you put Dustin Hoffman and Meryl Streep in the same scene: Pure awesomeness!

Originally posted by Carlos Baena


Monday, May 21, 2012

3ds Max vs Maya: Part 2, the Timeline

I apologize for the delay in this post but I've been very busy at work and at home right now. I'll do my best to push the third post as fast as I can.

OK, next in line: The Timeline!

The Timeline, or TimeSlider, is the numbered bar at the bottom of the screen in 3dsMax and Maya. Lucky us, they both place in the same place!

3ds Max and Maya timelines

They both behave the same way, but your workflow can change drastically from one to the other. I learned 3D in 3dsMax and when I switched to Maya, it was one of the hardest things to get use to. It was not because scrolling the timeline was different or anything like that, it was because handling the keys in the timeline is way different.

You'll what I'm talking about... On to the review!


Scrolling

The way you scroll the timeline does not change between both programs. You still have to grab the timeline cursor and drag it through the timeline to watch your animation. It's the cursor itself that changes.

The way I see it, in 3dsMax the cursor is divided in two: The cursor itself and the Cursor Bar (or more appropriately called "Timeline Bar").

Timeline Bar and its cursor


Maya has a more simple approach, in the sense that there is no bar, you can drag the cursor itself in order to go through the timeline.

Maya timeline cursor

As I said, the principle is the same: Click and drag to move through the timeline. However, the means of doing it is different. In 3dsMax, in order to move the cursor you have to drag the bar instead. The cool thing about the bar though is that it doesn't change it's size no matter the range of the timeline, whether in Maya, the cursor will reduce its size in order to fit the range, which becomes a bit of a pain when working with big ranges (animations of 400+ frames).

Another thing is that the bar displays your position and the number of frames you have in the timeline, while in Maya you have a value beside the timeline which displays your current frame, but you don't have the number of frames of the timeline.

So Maya might have a simpler way to manage the timeline, but I believe 3dsMax is more friendly and easier to work with.

Navigating through the timeline using hotkeys

Both programs use the same hotkeys to navigate through the timeline: "," to step backwards and "." to move forward. The default setting in both programs in different though. In Maya, you jump through keys while in 3dsMax by default you jump through frames.

The difference is basically the way you switch between jumping through frames or jumping through keys. In Maya, to switch between these modes, you just have to add the ALT key to the hotkeys, so if you want to jump to the next frame, just press "Alt + .".

3dsMax has a special key to switch between the two modes, its called "KeyMode Toggle". It's located under the playback controls (see image).

KeyMode Toggle


What this button does is enables the "," and "." to jump through keys instead of frames. So this is the equivalent of using the Alt key in Maya.

Another thing to note is that clicking on the arrow buttons in the timeline bar in 3dsMax will have the same effect as using the "," and "." hotkeys, with the addition that whenever you click on them, the mouse pointer will move too, so you don't have to follow the bar when it jumps. Do it to see what I mean...

In this feature there is no clear winner but I do prefer the 3dsMax way. Personal opinion.

Displaying keys

This feature is another one where both programs differ a lot. In 3ds Max, every key in the timeline has different colors: Red (position), Green (rotation), Blue (scale), Black (for modifiers), etc. By filtering the type of key, you can work with one transform type at a time, without the need of the Dope Sheet or the Curve Editor.

Displaying keys in 3ds Max

Maya is different. The keys displayed in the timeline are called "Ticks" and they're only one color: Red. There is not much to say about it other than you can change the width of the ticks in the settings, in case you find them too thin. The tick represents a key in that frame, all translations and/or attributes.

Displaying keys or "ticks" in Maya

Note: I have realized that there are some attributes that are not displayed in the timeline, like the camera Focal Length for example. If someone knows how to display these attributes, leave your tip in the comments ;)

Now, there is a small difference in the displaying of the keys that not everyone will notice: The position of the keys in the timeline. In 3ds Max, when you place the timeline cursor over a frame, the cursor covers the entire key. In Maya however, you can see that the key tick is located beside the cursor. This might be a bit confusing when first switching from one program to the other, but no worries, they both work the same way.


Note: It's worth to mention that in 3ds Max, there is a way to display the timeline in a Frame:Ticks way. You just have to configure the display options in the Time Configuration window.

Changing timeline range

If you want to change the size of your timeline in 3ds Max, the easiest way to do it is to use the following combinations while your mouse pointer is over the timeline:

- CTRL + ALT + Left-Click: Change the start frame
- CTRL + ALT + Right-Click: Change the end frame
- CTRL + ALT + Middle-Click: Move the whole range forward or backwards (this one does not alter the size of the timeline, but the position in time of the whole range)

You can also do it in the Time Configuration window and enter the exact values you want.

In Maya it's a bit easier. You have input boxes where you can type the values you want for the start and end of either the timeline or the playback range. You also have a bar between these boxes that work just for playback, so you can easily adjust the playback range.

Timeline and Playback ranges in Maya



Keys management

The way you copy, delete or move keys within the timeline greatly affects your workflow, and as everything else in the timeline, there are some differences on how these two programs handle this feature.

First Copy Keys.

In Maya, there are two ways to copy one key to another frame. You can move the cursor over the frame you want to copy, RIGHT-click and select "Copy"; then move to the frame you want to paste the key and RIGHT-click to select "Paste".  The other way is to put the timeline cursor on the frame you want to copy, then hover your mouse pointer over the frame in the timeline where you want to paste the key and MIDDLE-click. You'll notice that the timeline cursor moved but the animation stayed still. You can now add a key by pressing "s" (default hotkey) to add a key and keep that pose.

In 3ds Max, there are also two ways to copy a key: The first method is to simply select the key you want to copy (in the timeline) and SHIFT-Drag the key to the frame you want that key. The second method is to move the timeline cursor to the key you want to copy, then RIGHT-Click drag the timeline bar to the frame you want to copy the key to. Once you release the mouse button, a pop-up window will appear asking you which translate you want to key. Press OK and you're done.

As you can see, all methods are slightly similar, which make it easy to confuse with one another when switching programs. The same thing happens for moving keys. In 3ds Max, just select the key and move it wherever you want. In Maya, to select a key you first have to SHIFT-Left Click on the key to selected. The key will turn red. Then, you can move it.

To delete a key in 3ds Max, select the key and press the Delete key in your keyboard. In Maya, put the timeline cursor over the key you want to delete, RIGHT-Click to open the menu and select Delete.

Additional Notes

These are some things that is worth to mention but that do not fall into any of the topics I've just mentioned:

- In Maya, changes in the timeline are undoable. In other words, whenever you scrub the timeline using hotkeys or by using the timeline cursor, you can undo the action. I have a post that explains a way to avoid adding those actions into the undo queue.

- In 3ds Max, adding  a key in the middle of your timeline (let's say frame 35) will automatically add a key in frame 0. You can stop this behavior by turning off that feature in the Preferences\Animation menu, under the "Auto key On" option.


So, I have to say every time I work in Maya there are moments that miss the 3ds Max timeslider. I believe it's easier to work with, and the fact that you can filter what translation keys to show, plus the simplicity to copy, move or delete keys, places it on top of Maya's timeline.

Next (and last topic) in the review: Everything else! A list of difference that I believe is worth mentioning between these two programs... Stay tuned! :P

Wednesday, May 16, 2012

Disassembled

With all the hype of the Avengers movie, here's a funny take on them!

Wednesday, May 9, 2012

850meters Project

Really cool looking project! Check one of the Making-of here.


Wednesday, April 25, 2012

SubWars

Really cool animation, I love the anime style!



SubWars from SeanSoong on Vimeo.

Friday, April 20, 2012

Sunday, April 15, 2012

3ds Max vs Maya: Part 1 - the Curve/Graph Editor

Originally, I wanted to do only one post about the differences between both 3D packages, but when I started I realized that it will take more than just one post. Hopefully, it will be only two... Or three. :P


A lot of things have been said about which program is better: 3ds Max or Maya. I have some colleagues that prefer Max, while others die for Maya. And whenever one of each get together, a long (and sometimes heated) discussion starts, with no clear winner.

The choice of software sometimes depends on which software you learn first and which one you constantly use. However, that's not always the case. I know some animators (like me, for instance) that learned 3D on one of them, but prefer the other. Truth is, when you get use to the specific workflow of one them (i.e. shortcuts, viewport handling, technical issues), it's hard to change it, or it seems the other one is missing features "so obvious" that the software becomes useless.

In this post I'll try to cover most of the differences from an animator point of view. I will not be talking about modeling or rendering or lighting or anything else not related to animation, since I don't know all the features of each package (which are a LOT!).

Another thing that is worth to mention is that I'm comparing both programs on the same "yearly" version. I'm using the 2010 version of both 3ds max and Maya, so maybe some of the features I mention here have been upgraded in recent versions. If so, put it in the comments!

Finally but no less important, this is my point of view. Take it as that, just one opinion. If you disagree with what I say, that's cool.

So, into the review...

Graph Editor


Both, Maya's Graph Editor (left) and 3ds Max Curve Editor


First in line is every animator best friend: the good ol' Graph Editor, a.k.a. Curve Editor in 3ds Max. In general, both editors do the job right but there are some small differences that are actually not so small for some people.

Tangent Selection

In the Curve Editor (CE) in 3ds Max, the tangents are part of the key, in the sense that if you want to move the tangents, the key must be selected. In the Graph Editor (GE) in Maya, the tangents are independent objects from the keys. So in order to move a tangent, you have to select a key and then select the tangent. Basically, in 3ds max it's easier to select the tangents, but in Maya you can select (and adjust) multiple tangents at the same time.

Breaking Tangents

Another difference in the tangent handling is the way you break them. In the CE, if you want to move one tangent independently from the other one, you just have to press SHIFT and that's it. In GE, there is a button in the toolbar called "Break Tangents" (see image), which is a command to break the tangents of the selected key.

Breaking tangents toolbar in Maya


So it might seem like an additional step, but the problem in the CE comes when you want to unify the broken tangents while keeping the changes you did when you broke them. In GE, you just press the "Unify Tangents" and it's done. In 3ds Max, you'll have to follow this procedure.


Tangent types

The tangent type toolbar is a bit different for both programs (see image).

Tangent type icon comparison
The CE gives you the option to change each tangent to a different type (ease-in ease-out, linear, etc) from the toolbar by means of drop-down buttons (just click-hold a button and more options will appear), but changing the tangent type to something different than Auto or Custom will make the tangents disappear. In the GE, you will have to select the tangent first and then select the type of tangent you want, but in this case the tangents will never disappear.

Another thing regarding this topic is that there are some types of tangents that vary from one software to the other. While in the GE you have more variety (spline, plateau, clamped) - and in my opinion, better naming-, in the CE you'll find auto, custom, fast, slow and smooth.



Buffer curves


This is a feature that is present only in Maya, and for most animators, is a game changer. The Buffer curves allow you to take a snapshot of the f-curve at that moment in time. When you start modifying your curve, you can always go back and forth between the current curve and the snapshot (even when playing the animation) and compare how the changes affected the animation, and go back in case you screw it up.

Buffer Curves demonstration


It's worth mentioning that buffer curves are not saved with the file, so once Maya is closed, they're gone.

3ds max does not have a feature like this.

Selecting the whole curve

The only way to select the whole curve in 3ds max is to select all the keys that are part of the curve. In Maya, the curve is another object (separated from the key and the tangent). Selecting the whole curve by, well, selecting it can be very useful, but it's also very easy to select it by mistake.


f-Curve Scaling

Scaling keys is one of the things that mostly differ between both 3D packages. In 3ds max, there are two different types of scaling : Scale Keys and Scale values. The first one is used to scale keys in time only (horizontal scaling), while the second one scales the values of the keys (vertical scaling).

When scaling values, the curve is scaled from a reference point, i.e. whenever you select the scale tool, a yellow-ish reference line will appear in the CE and it will serve as your reference point to scale the curve (or keys, if you want to select only a couple of keys).

Scale Values reference line in 3ds Max

The problem with this feature is that the line will always stay in the same place no matter what you select. So let's say you scale some keys in the Y-Rotation axis between 270 and 360 degrees. If you want to scale some other keys in the Z-Translation between -200 and -300, you'll have to drag the scale reference all the way down by yourself (one workaround is to close and re-open the CE, so the reference line position will reset to its default position). It would be nice if the reference line pops closer to whatever you have selected.

When scaling keys (horizontally), the position of the time slider will serve as the reference line.

In Maya, the same scale tool that you use to scale polygons and other things in the viewport, works in the GE. So taking the same previous example, you only have to select your keys (or f-curve) and scale them as you would in the viewport (BTW, tangents can't be scaled). On this feature, I see a clear winner.


The Euler Filter!

It's worth to note that both programs have the the Euler Filter command (most 3ds Max users don't know about it, that's why I'm mentioning it), it's just that in 3ds max, it's hidden under the Utilities menu, while in Maya is found in the Curves menu. To my knowledge, both filters work properly.


Zooming

The Zoom tool is another feature that I found works better in Maya than in 3ds Max because you use the same zoom hotkey that is used in the viewport for the GE (that would be the default "f" key, that comes from the english word "Frame").

However, there are some things that I like in the CE. For example, when you have a key selected from a specific axis and you select another axis, the CE will automatically zoom to the key in that same frame, so you don't have to re-zoom every time you select a different axis (there is the Auto Frame option in the GE, but is not quite the same). Another nice feature is that in the CE you can zoom only in time (horizontally) but not in values (vertically).

For my taste (and my current workflow) I prefer the more simple "f" key.


Out-of-Range values vs. Infinity

They do the same thing: Replicate the f-curve over time so you can adjust you walk cycles (or any cycle, for that matter).

Out-of-Range window in 3ds Max

Infinity options in Maya


Basically, both tools work the same way, but there is one very small difference that make me go to Maya for this one, though it's something most people won't find it's a problem at all: in 3ds Max, when a f-curve is on cycle mode, you won't be able to add keys after the last key on the cycle. Instead, it will add a key to the equivalent frame inside your cycle. You still can add keys however, by copying an existing key and moving it on to a different frame, but you can't just hit "k" and add a key. For me, this limitation is sometimes annoying, and I feel like it's just too much work for something so simple.

In Maya, you can add keys to your cycle wherever you want. Freedom is priceless, I guess.

Bake animation

This is something that is only present in Maya and for me is not a game changer. Basically, it allows you to "bake" an animation, i.e. add a key per frame to a certain object in order to preserve the animation.

You can get the same feature in 3ds Max through a script (google it, there are a couple of scripts available), or by saving your animation through "Animation\Save Animation..." and selecting the "Key per Frame" option. Then you reload the animation into your scene.



That's pretty much it for the Graph/Curve Editor. In all honesty, I believe Maya beats 3ds Max in this area. Not by much, but it wins. The simplicity in tools like Zoom, Scale and the Buffer Curve, makes me wonder what is Autodesk waiting to implement those in 3ds Max.

Next post I'll take into one of the most used tools by animators: The Timeline (or TimeSlider).

Cheers!


Tuesday, April 3, 2012

Kiel Figgins Tips and Tricks

I found this great source of tips and tricks in Kiel Figgins website. The one that I liked the most is a little script to actually create a key on an f-curve without disrupting it. This is a great way to add a key whenever you want to keep a certain pose that you got by adjusting the tangents.

Here's the link to the Tips page, and this one is for the adding key script.

P.S.- Some of the tips are a bit old, but still good. Some, like the euler filter, has been already implemented in Maya (in Graph Editor\Curves\Euler Filter).

Monday, April 2, 2012

Metegol: teaser del film animado de Campanella

I love soccer and I love animation. This video is a combination of both! Can't wait!


Wednesday, March 28, 2012

Nice free Video Editor

I recently needed a video editor to put together two videos I rendered for work. Since I believe Windows solutions are not necessary the best (I'm looking at you Movie Maker), I started looking around for a free video editor, and I found a software called Avidemux.



I mostly use it to put together two or more videos and save them in a nice format (no, WMV is not nice). But what you can also do is load a video and scrub it frame by frame. What's even more interesting, is that even WMV files can be scrubbed, which I find super cool!

You can download the ZIP version so you don't have to install it in your PC (i.e. its also portable). Did I mention it's free too?

Anyways, I think it can be a nice little tool that can come in handy from time to time.


Friday, March 9, 2012

Andrew Stanton speech on TED.com

I got this speech from the 11 Second Club blog. I have to say its fascinating the way Andrew gets your attention in the first minute by telling a short story, or like he said, a joke.

Enjoy it! It's totally worth it!



Tuesday, February 21, 2012

Maya selecting the Shape node instead of the transform node

Sometimes, I wonder what's going on in the head of the people at Autodesk, because for some reason, Maya or 3dsMax behave in a very weird, non intuitive way.

I came across a problem the other day with Maya, when I was trying to select my controls to animate a rig, but every time I click on the control in the viewport I would select the Shape node instead of the transform node. The curve ball here is that I could still select the control through the outliner or the rig's selection tool (those small windows were you have all the controls for the rig).

After 10 minutes digging into Maya's settings and preferences, I decided to call for help, and I did what every animator should do in case of emergency: Ask Google.

I find this little thread in an Autodesk forum. Basically, it says that whenever you want to select an object that is locked through a layer, you will select the shape instead of the transform. Go figure!

The thing is most splines used as controls in a rig are basically made of two objects (or nodes): the shape and the transform. If you don't believe me, check your outliner, right-click on it and select "Show Shapes" (if it's not already active) and you'll see that every control is made of a transform node (top node) and the shape (child). So generally, by clicking on the object itself on the viewport, we're selecting the transform node, which is the one we animate. Since the transform nodes are the ones that go into the layers, whenever that layer is locked, Maya selects the shape instead, which IMO is useless.

Anyhow, it wasn't Maya's fault, it was my fault for inadvertly locking the control layer of the rig. My bad.

Saturday, February 18, 2012

Stop Undo-ing the scrub time slider in Maya

In one of those discussions about which animation tool is better (Maya or 3ds Max), a fellow animator commented on something I never thought about. He said that he hated the way Maya added the time slider scrubbing to the undo queue. In other words, every time you change a frame in Maya, whether by stepping to the next frame or key, an Undo action is registered. This issue was very annoying to my friend, since whenever he changed a pose, he scrubbed the time slider (several times) to see if the change worked. If i didn't worked, he had to undo all the scrubbing before undoing the actual change in the pose.

For some reason, I got use to it. That's why I never complained about it. But, this subject made me realize that it is actually an issue. Less undos means faster animation. So, I decided to ask Google what it thinks about this subject...

He pointed me to this link. It describes a way to change your hotkeys in a way that you disable the undo queue for that specific command.

The thing is, Maya is a software made up from scripts. Everything is a script. From hotkeys to tools. So, the Next/Previous hotkeys to scrub the timeline are no exception. There is a command that runs whenever you press the , or the . key. So, in changing that command, you can get rid of the undo queue-ing.

Basically, these are the commands you have to change:

Next Frame (Alt + .)
undoInfo -stateWithoutFlush off;
currentTime ( `currentTime -q` + 1 );
undoInfo -stateWithoutFlush on;

Previous frame (Alt + ,)
undoInfo -stateWithoutFlush off;
currentTime ( `currentTime -q` - 1 );
undoInfo -stateWithoutFlush on;

Next Key (.)
undoInfo -stateWithoutFlush off;
currentTime -edit `findKeyframe -timeSlider -which next`;
undoInfo -stateWithoutFlush on;

Previous Key (,)
undoInfo -stateWithoutFlush off;
currentTime -edit `findKeyframe -timeSlider  -which previous`;
undoInfo -stateWithoutFlush on;

Basically, what these commands do, is disable the undo queue before jumping to another frame/key and then enables it back. If you look closely, the middle command (starting with 'currentTime') is the same as the existing commands. The only thing we're adding is the 'undoInfo' lines at the beginning and end.

Note: You will not be able to edit the existing commands. Instead, create new ones.

So, go to your Hotkey Editor (Window\Settings/Preferences\HotKey Editor), select the "Playback Controls" category and create the new commands. Then just reassign the hotkeysto the new commands and done!


I created a little window to explain the steps.

I honestly think Autodesk should implement an option in the Undo settings to implement something like this. It would safe people some time (and lots of keystrokes!).


Some (very!) useful hotkeys for Maya

I was wondering today what hotkeys might be useful in Maya that I'm not aware of... After all, as you become more proficient with any given tool, you will be able to deliver faster results. And Maya is a tool for animators.

So, a Google search got me to this amazing hotkeys that are not common knowledge (at least not to the animators that I know). Here are some really good ones:

Note: Since Maya is case sensitive, I'm adding the hotkeys in lowercase. If there is a hotkey that is uppercase, then I'll add SHIFT to the command.

Playback
  • Alt + v : Start/Stop playback 
  • Hold k + left-click drag : scrub time slider (also works within the graph editor)
  • Hold k + middle-click drag : move frame counter without updating position of objects (this has the same effect as if middle-clicking on the time slider to copy the translations of one object in the scene to a different frame)
  • Hold k + left-click in graph editor : change the position of the slider to where you clicked
  • Alt + Shift + v: Go to the first frame

Keys
  • Shift + w : set key for translate attributes only 
  • Shift + e: set key for rotate attributes only 

UI/Viewport
  • Ctrl + Space : show/hide all GUI elements (equivalent to the Expert Mode in 3ds Max) 
  • Alt + b : toggle background (gray, dark gray, gradient or black) 
  • [ : Undo view change
  • ] : Redo view change

Tools
  • Hold w + Left-click : open Move Tool Hotbox (allows to switch between local, world and other translate options)
  • Hold e + Left-click : open Rotate Tool Hotbox (allows to switch between local and other rotate options)
  • Hold r + Left-click : open Scale Tool Hotbox (allows to switch between local and other scale options)
There is a nice pdf file with a lot more hotkeys. Click here to have a look at it.