This week I continue where I left off with more important best-practices for 3D character animation. Class is in session, so prepare to be schooled:
Rule # 5. Work in small files
Don’t make all of your animations in the same file. Video game animations are subject to extreme amounts of iteration, and if you have to change the way the character throws a grenade, and later on in the sequence you have a bunch of other animations, then you have to shift the entire sequence down to accommodate for any length discrepancy that ensues. Worse, it is impossible to keep multiple versions of each action on hand if you are continuously working from the same giant file.
Below you can see the animation files I’m using for the juggernaut enemy. This particular character has separate files for his idle, walk, smash, shockwave, charge, and death animations.
Rule # 6. Use clips to bridge movements
In Maya it is possible to create animation clips using the trax editor. These clips can be stored in folders and subsequently added to characters in other files sharing the same rig and controls. Using this method, you can take multiple animations and combine them into a single sequence, changing the order as you see fit. Note: This will not work at all if you haven’t followed the best-practices listed in the previous post.
In order to import the bomber into the game, all of his animations needed to be a part of a single sequence, so I recorded clips from each of his @ files and pieced them together using the trax editor as depicted below:
Rule # 7. Apply good naming and versioning conventions
It is critical that you keep your work organized! Any names given to assets or asset-related files and folders should be descriptive and consistent. I can outline my organization strategy in the following steps:
7.1 Use Maya’s project window to create a basic folder structure that will contain all assets related to the game
7.2 Create sub-directories specific to your project’s needs (i.e. scenes/enemies/joker/)
7.3 Establish a naming convention and a compound word methodology (I use headlessCamelCase) and apply it to all files.
This makes it much easier to find what you are looking for in a given folder: If all of the juggernaut’s texture files are named based on the same convention, then you can scan the file list alphabetically for juggBodyTex.png, and it will be right next to juggCardTex.png and juggBodyTexNRML.png
7.4 Add version numbers to anything that you change, so you can save multiple copies without it becoming confusing.
You’ll be glad you did this when you’re working on joker@laugh_v019 and you delete the history such that you need to revert to joker@laugh_v018 so that you lose 10-30 minutes of work instead of hours. Also when Claude asks for joker@laugh_v006 because it would be perfect for the laugh attack idea he wants to prototype.
That’s really all there is to it. Good luck and happy animating!
-Johnny

