Thursday, 10 December 2015

2015 Animation Showreel

New demoreel! 

 It's nearly a new year so why not make a new showreel? Featuring Yoda! Would never have imagined I'd get to animate him let alone all his ingame animation :)

I plan on making some more in depth videos for General Grievous, Yoda and everyone else, but for now why not enjoy this boss battle? All gameplay anims and stage transition cutscene were made by myself. Although I didn't make the camera animation for the stage transition.
All Grievous animations were made in about 2 1/2 weeks! Good times! Fight starts at 30 seconds in.

Sunday, 15 November 2015

maya tips! inview message help

Python inviewmessage command help:
Since maybe Maya 2014 there's been a groovy viewport feedback tool called inViewMessage.
You'll have seen it when using some default maya commands like hiding objects and changing the viewport mode. Overkill for hiding an object if you've actually used Maya before, but it's nice to look at!
ooo would you look at that!
Here's my messages script, it's a work in progress but has some info and warning commands

turn on inview messages here

Before that all you could use was headsUpMessage;
It's true, nobody ever sees it

Sunday, 1 November 2015

Modifying the default enum attribute values in Maya

So, when you add an enum attribute to an object in Maya you get a default pair of values "Green" and "Blue". I like to use enum attributes for switches on rigs, eg visibility toggles etc. It works great and you get the cool little popup menu. You can add as many options as you wish as well so it's nice and flexible like that.

But... Wouldn't it be nice to have the default values something more useable? Well, you can. So here's how I tracked down where they come from, so they can be changed. (This is my usual method for finding out how something core to Maya works)

Monday, 12 October 2015

installation guide version 2 !

With some luck I managed to make a simple installer for the tools module. It will generate the correct .mod file for you and you can put the actual tbtools folder wherever you like! Imagine that.

Here's a video showing you how:

Or follow these handy step by step instructions :)

  1. Download the tools zipfile from github: 
  2. Extract the tbtools-master folder somewhere, e.g. 
    • c:\users\reginald.hopelessness\maya\tbtools-master\
    • or
    • d:\folder\in_a_folder\tbtools-master\
  3. With Maya open, drag and drop the .mel file called "drag_me_into_maya.mel" into your viewport.
  4. The installer will create the .mod file for you for that version of Maya, check your documents\maya\modules\ folder for a file called tbtools.mod
  5. Restart Maya
  6. You should now see the "tbtools module loading" message in your output window

That should be it, now if you look in your hotkey editor you should see some new tbtools_*** categories. More about those soon!

Wednesday, 7 October 2015

tbtools - useful animation scripts! - installation guide


I've been collecting some of my animation related tools together into a package to share and hopefully save someone some time whilst animating!

Once installed I've tried to make it nice and easy to get started, all commands that are normally run on hotkeys are automatically added into your hotkey editor under the categories tbtools_*blahblah*

Installation guide:

This guide assumes you are running windows and you know where the user/maya folder is. By that I mean the "C:\Users\user\Documents\maya" folder
Firstly you'll need the tbtools package downloaded

Download the zip file here:

  1. Once downloaded, make a folder in your user/maya folder called "tbtools"
  2. Extract the contents of "tbtool-master" from the zip file into the "user/maya/tbtools" folder
  3. If you don't already have a folder called "modules" in your user/maya directory, make one
  4. Copy the tbtools.mod file from the tbtools folder to the new modules folder
  5. You should have a folder structure like this:
  6. Now, you'll need to edit the tbtools.mod file to have the correct directory name. Sorry this isn't automated yet. Open the tbtools.mod in a text editor and change the directory path(s) to match your user\maya\tbtools\ directory name, eg:

  7. Important! The file path needs to be set for your version of maya, if your version of maya isn't mentioned in the list, change one of the "MAYAVERSION:2015" lines to match yours.
  8. Also important! You have to have the "\" at the end of the path.
  9. Ok! all going well, when you load maya, you should see this message in your output window
  10. If you don't, double check your file paths are all correct and the tbtools.mod is in the right place. It's ok to have the original tbtools.mod still in the maya/tbtools folder as well.
  11. "Fun" fact, the .mod file is just adding some python paths to maya, so we can check if the module did it's job by running this python code:
  12. In maya you should see some tbtools folders in the result:
  13. Now, have a look in your hotkey editor. You should see a bunch of new tools
  14. Have a play around, actual docs on how to use the tools coming soon. Any questions welcome!

Saturday, 12 September 2015

Useful maya viewport hotkeys, part 1

He're a super useful set of hotkeys for maya (when animating)

All it does is switch your viewport to display joints and shapes, meshes, or all of them. It's great for quickly being able to see your animation clearly when the rig is distracting without mucking about with layers :)
I use the 1,2 and 3 keys for this so they are always easily accessible.

grab the python file from here:


Wednesday, 13 May 2015

Some tips from the pros

This is an old article but very useful stuff here. Check it out, 10 animation tips from Pixar's directing animators Andrew Gordon and Robb Denovan.


Sunday, 12 April 2015

tb tools - match tangents for looping anims

When animating for video games you end up making a lot of looping actions, idles walks etc.
One thing that is very important is keeping track of your tangents at the start and end of your loop. Miss matched tangents can break the illusion of a nicely looping animation, highlighting the start and end. But it's a total pain maintaining each end of your curves, so...

I've revised the shortcut I use to match tangents either from the start to the end, or end to the start of your loop. It leaves the outside tangents alone as you may have other animations on your timeline. It takes your current playback range as your loop range. If you have a curve selected it will work on your selection, otherwise it will work on all curves on the objects in your selection.
I usually have this set to "ctrl + [" and "ctrl+]" ;)

I'll go into more depth about how I lay out my keyboard shortcuts to work faster in some other posts.

Get the file here:

usage as so:
import matchTangents as mt  
reload (mt)  

This will get added to a toolkit of useful shortcuts very soon! watch this space for more tools.

Friday, 10 April 2015

swanky python editor - PyCharm

I was shown this neat editor for writing python code today, not that I really know python but whatever. Look it's grey, grey means new and modern in software land. Give it a try, it's free.

Get it here:

Friday, 3 April 2015

adding extra buttons in maya

Baking all your animation down all the time? I'm not, but people I know are, true story. Recently I was asked why a bakedown script wasn't quite working properly, and it turned into making a new button in the anim layer tab in maya to merged all layers :p
Here's the code to just bake down your layers;
 animLayerMerge( `ls -type animLayer` )  
But... why not just add that into the main maya ui? It's easy!
oo shiny
oo shiny

Sunday, 29 March 2015

smooth scrubbing in maya

Here's a demo of a tool to see your animation in a silky smooth way. It's an expansion of the normal time dragger tool, which scrubs your animation but snapped to frames. This one will disable the snapping when active, meaning you can see the animation in between integer frames.

The tool is in python so stick it in a maya python folder. For the maya hotkeys you will need to set 2 commands, one for when your key is pressed, and one for when you release the key. This has to be the same combination of keys for the pressed and release, just like the default maya version. If not then you wont get your previous tool set back automagically and the timeline snapping will stay off.

on press
 import timeDragger as td  
on release
 import timeDragger as td  

get the python file here;
Download timeDrag script
Script updated to be less dumb! thanks, 

optionVar and global variables in mel

Option variables are a way of storing data in maya between sessions. Most of your preferences are saved in this way. Global variables are a way of making information available between scripts on a per session basis. Say you wanted to know how many times a function had run, but keep the total between sessions. You could store that number as an optionVar. That way the total would persist between maya sessions.

Sunday, 22 March 2015

First post, old showreel...

Hey hey, for lack of a better thing to put as the first post, here's my old showreel!