Downloads

Maya Scripts - Maya Rigs - Maya CGFX - Misc

Scripts
Whenever I find that I need something that my 3d Package (Currently Maya) cannot deliver, I usually end up making the tool myself. I hope you can benefit from some of these - some are just a quick hot-keyable action, but some save hours and hours of time.

Modeling

 [MORE]  aimNormal.mel 1.0
 

Written for Maya version 3 and up.

This script lets you aim the normals of any polygon selection toward a target object. Just select the poly objects or components and then a target object and run the script. The normals should now point toward the target object. This is nice for combing normals in directions away from the camera.

 [MORE]  aimNormalToCamera.mel 1.0
 

Written for Maya version 3 and up.

This script lets you aim the normals of any polygon selection toward the perpective camera you are looking from. Just select the poly objects or components and run the script. The normals should now point toward the camera -- if you have normal display on, they will appear to disappear since you are now looking down the length of each normal. This is great for zooming around an object and setting the normals so that they will look nice from that particular angle.

 [MORE]  ajhGONAD.mel 1.0 - Good Old NURBS Attach Detach
 

Written for Maya version 3 and up.

This script makes patching NURBS surfaces together a breeze. It attaches two selected surfaces or isoparms and detaches them immediately at the isoparm where they were attached - perfect for patching.

It works on a single selection pair, or on multiple selection pairs, although sometimes multiple selections mess up. Just select the two surfaces or isoparms and run ajhGONAD in the script editor.

 [MORE]  ajhMeshConform.mel 1.5
 

Written for Maya version 5 and up.

Updated to 1.5 - Now supports components as well as objects, and has a GUI with option buttons

This handy little script will conform any number of NURBS surfaces, NURBS curves, CV's, poly surfaces, or poly vertices to a goal surface. Think "Shrink Wrap"
It uses the closestPointOnMesh an closestPointOnCurve nodes found in the Maya 5.0 Bonus Tools, so install that first! Later versions of Maya (6.0 and onwards) have this plugin included.

 [MORE]  ajhMeshConect.mel 1.5
 

Written for Maya version 3 and up.

Updated to 1.5 - Now supports components as well as objects, and has a GUI with option buttons

This little abomination connects the OutMesh of your first selected polygon object to the InMesh of all of the rest of your selected polygon objects, letting you model with Instance-like workflow - all changes made to the original object will flow through to the duplicates, BUT all changes made to the duplicates will stay with that duplicate, and stay even if you change the original further.

Great for:
     Repetitive modelling tasks - model one, and update a bunch, and add distinct details to each object.
     Game Triangulation - Model in quads on the base object, and triangulate a connected mesh.
     Blend Shapes - Mesh Connect all of your blends and your base head. Any modelling tweaks will be updated on all blends!

 [MORE]  ajhSmartExtrude.mel 1.0
 

Written for Maya version 3 and up.

This script will extrude edges or faces based on the current selection, and will convert poly edges to faces or vice versa depending on the first selected component.

 [MORE]  flattenNormal.mel 1.0
 

Written for Maya version 3 and up.

This script will take a polygon component selection and flatten out the specified axis' normals, normalizing the the remaining values -- so if you had a normal pointing a little in x, y, and z, and flattened the z axis ( flattenNormal z; ) the remaining values in x and y would remain the same relative to each other, but normalized with no z component.

This script sounds odd, but it is *extremely* useful for aligning the normals on game tiles when making a 3d tile-based world set, ala Neverwinter Nights or the dungeons in Asheron's Call 2. The tiles' normals must all match perfectly or shading errors will be everywhere, and getting rid of the x or z component in the normals often helps make them perfect.

There are a few other useful normal operations bundled in here - a description of all the arguments is in the script file.

 [MORE]  toggleShadedOnSelected.mel 1.0
 

Written for Maya version 3 and up.

This script toggles the overrideEnabled and Shding attibutes on a surface, letting you see some objects in wireframe and some in shaded mode more easily.

Note: Won't work on objects inside layers, since the layer takes control of both of those attributes.

Animation/Character Setup

 [MORE]  controlBoxSetup.mel 1.0
 

Written for Maya version 3 and up.

This script traverses a joint heirarchy, placing a control box at each joint's position and constraining the joint to the box.

 [MORE]  createCtrlBox.mel 1.0
 

Written for Maya version 3 and up.

Just a simple little script to create a NURBS control box at the origin. Later I'll add a bunch of other control objects.

Scene and Data Management

 [MORE]  ms.mel 1.0 - multiSetAttr
 

Written for Maya version 3 and up.

This script sets a specified attribute to a specified value on all selected objects, regardless of type - great when using custom attibutes or attributes not in the Channel Box. ALSO - if the attribute is not found on the transform node of the object the script will try the shape node.

Example: ms "translateX""5";

UI and Misc

 [MORE]  ajhReloadTextures.mel 1.0
 

Written for Maya version 3 and up.

Run this script with a model selected and it will reload all the file textures connected to it - at least, all the color textures. It was made for a game project I'm working on. Maye it'll find all the textures later (when I need it to =) ).

 [MORE]  toggleSnapRelative.mel 1.0
 

Written for Maya version 3 and up.

This script toggles the Retain Component Spacing option of the Move Tool - letting you switch between snapping components as a group or snapping the each individually. Quick, Dirty, but useful on a hotkey.

 [MORE]  visToggle.mel 1.0
 

Written for Maya version 3 and up.

This lets you toggle any and all of the Show->* options on each model panel.

Don't want so see polys? "visToggle polymeshes;"
Don't want so see IKs? "visToggle ikHandles;"



Just a quick dynamic toggle script, but extremely useful for hotkeys. A full list of the arguments that you can safely use is in the script.