Tech Art 2005

A summary of the scripts I’ve written between 2000 – 2005.

Company:  Sony Computer Entertainment, America
Program:  Maya
Languages: MEL
File Formats:  MB, FBX

SCEA Head Creator Tool:

 Used to create star player heads from a front and side photo.  Uses blendshapes, wrap deformers, and projection shaders for rapid modeling.

A behind-the-scenes video profile of my early facial animation system for GameDay 2003:

General Tools:

•  ProjectManager:  Will keep all projects organized in one handy interface.  Makes creating a referencing structure quick and easy.  Includes a batch processing procedure to batch a folder or selected scenes.

•  PerforceMayaUI:  Maya UI with command line calls to Perforce for adding, submitting, reverting, and deleting files.  UI image updates to reflect the current state of the file.

•  AutoBack:  Auto backup utility.  Set the backup folder, interval time, and the number of backups.  Uses scriptJob with timerX command.

•  BatchProcessor:  Will recursively recreate a directory and subfolders, while batch processing each Maya file within to a user defined script.

•  GridTools:  Enables artists to set real-world grid sizes in miles, yards, feet, inches, kilometers, meters, centimeters, or millimeters.

•  TearOffShelves: Custom shelf system in a floating UI.  User sizeable and expandable.  Saving and loading enabled.

•  Renamer:  Renaming utility with three modes: search and replace strings, rename incrementally, and prefix/suffix.

•  ToggleLayerVis:  Will turn on the visibility of the current layer, while turning off other layers.  Step up or down through layers, enabling accurate LOD comparison.

•  IntegrityCheck:   Run as a pre-exporter to check for issues that crash viewers  (invalid names, extraneous nodes, invalid geometry, etc.)

Modeling Tools:

•  SuperMirrorYZ:  Mirrors polygonal geometry and clusters. Merges verts, soften seams and has an option for flipping UVs.

•  NormalCopier: Copies normals from one object to another, of an equal vert count.

•  RandomVertColor:  Used in stadium construction to randomize vert colors based on user input.  Used on crowds for uneven shadow distribution.

•  Randomizer: Will randomize vert or object locations based on a user setting.

•  SnapVerts:  Will snap verts of one object to the location of another object based on user tolerance.

Rigging Tools:

•  CustomRig:  A tool for creating perfectly symmetrical and motion capture-ready skeletons.  Will create a rigged proxy that controls a high-res mesh.  Complete with phoneme system and driven keys for fingers.

•  FindInfluences:  Will find verts that have more than two joint influences (or a user specified number of joints).

•  ImportAndBind:   Importing a scene with the same skeleton as one already opened will bind all imported geometry to the existing skeleton, and delete imported skeleton.

•  Retarget:  Used for joint retargeting in unique head creation.  Joints are imported, weighted, and offset for the amount verts have moved, based on config.txt

•  WeightsSaver:   Save, load and import weights using several methods.  Save to the verts themselves via blind data, or as an external weight file.  Load by number, proximity, or tolerance.  Import objects by transferring skinClusters, or reading values from blind data.

Animation Tools: 

•  AdjustTangents:   Uses an atand (b/a) formula to calculate an angle from two keys with attribute and time values.  Rotates tangent to point at adjacent left or right key.  Beneficial when range deleting mocap, so curves flow naturally.

•  PoseGrab:  Gets keyable attributes for selected nodes at the current time and saves the value to a shelf in the form of a button (with icon).  Recall pose by hitting a button.

•  Cycler:  Create half a cycle, run the script, and the other half is generated.

Texturing Tools:

•  FAOGENUI:  A Maya UI which sends command line calls to FAOGEN to bake an ambient occlusion map for the selected object.  Also, checks files out of Perforce via command line, converts to .tga via Image Magick command line, and converts to DDS via Compressonator command line.

•  RefreshTextures:  Will recursively search a shader network and refresh “file” nodes based on object selection.  Will continue through broken shader networks.

•  FlipUVshell:  Flips UV shells left and right, up or down, or about a user defined UV coordinate.

Lighting  and Rendering Tools:

•  RenderImageStrips:   For large image rendering (poster size), uses the batch renderer to split the image into “strips” based on a user defined number.


•  CinematicTransferRig:  Used for transferring rigs from one head to another, offsetting driven keys by the delta value of joint positions.

•  AutoTalk:  Will randomly set phonemes based on .wav file length, or range slider.  Realistic random talking.

•  FacesHands:  UI with buttons for keyframing multiple blend shape targets to  0 or 1 (engine requirements).  Export button for automatically writing .anim to a folder.