Home Technical Talk

Maya Scripts Thread

polycounter lvl 12
Offline / Send Message
bugo polycounter lvl 12
Hey, we need a maya scripts thread on this.

I'm gonna start pointing out some cool ones I use:

- GoP - Go from Maya to photoshop - great way to texture your model without having too much exporting and importing.

- UV Ninja - Great tool that adds tons of uv functions many people don't know in Maya and it's all on it's interface, $20 bucks tho.

- detachSeparate - Same thing as in Max, kills history and detach a mesh without leaving history and group trash, it simply duplicates the mesh and deletes the inverted faces. (i think)

- FB combine - (from Chris Whitaker aka Funky Bunnies) - this is a simple script, but a life safer. It's a toggle for combining and separate meshes without losing pivots AND without leaving trash/history/groups.
http://www.funkybunnies3d.com/tools.php - FBcombine

- cgx_wornEdges - It creates some worn edges (cavity) on the vertex colors in maya, and you can bake that to texture later and create masks, etc. Pretty handy.

- Nmap Based baking AO - I don't use this as much, but I thought it could be useful for some people.

- spPaint 3d - I use this guy all the time, paint meshes everywhere, random scale, rotation, and other settings by instancing, or just duplicating. Extremely useful for env. artists out there.

- Batch change attributes - The name says it all

- fRay Boolean Master - Had to use this once, it lets u keep boolean many objects without loseing history.


If you have HANDY scripts that you use on your daily basis, please share! I'll be updating the list here too.


  • CheeseOnToast
    Offline / Send Message
    CheeseOnToast polycounter lvl 15
    Nice one Bugo. About time we had one of these.

    Anyway, here's a few more :

    FileTextureManager - For fixing texture paths. Also can automatically copy/paste textures into new locations. Consolidate all those outsourced models and textures into your file structure with a single button click :D


    XyShrinkWrap - Topology helper. Will shrink wrap one mesh or selected components to another.


    oaRelaxVerts - Relaxes a mesh while maintaining its original volume, unlike standard relax. Helpful when preparing a mesh for sculpting.


    MopKnit - Unfolds a mesh flat according to its UVs, and adds blendshape controls. Great to use as a wrap deformer for complex meshes such as chainmail. Adapted by our very own Mop from the Max script SlideKnit.


    MopRenderableCurve - Another one from Mop, generates polygon geometry from curves. Very useful, and simpler to use than the Maya paint effects UI.


    Extended Duplicate - Create complex geometry along a curve. Demonstrated by SlipgateCentral in his "making of Nox" videos. Much nicer to use than motion paths/flow paths.

  • bugo
    Offline / Send Message
    bugo polycounter lvl 12
    DAmn, loved those, keep'em coming.
  • gray

    the OpenMaya Toolbox is a collection of useful modeling tools complementing those already in Maya.
    its an oldie but still works.

  • malcolm
    Offline / Send Message
    malcolm Polycount Sponsor
    How do you run Mop's curve tool, I can never figure it out, is there a global proc I need type, do I need save the file to an external script and source it? And why isn't this thread a sticky?
  • JValencia
    Offline / Send Message
    JValencia polycounter lvl 10
    bugo wrote: »

    the OpenMaya Toolbox is a collection of useful modeling tools complementing those already in Maya.
    its an oldie but still works.


    I was trying to install this but I didn't understand the help .txt that comes along with it. Here are the instructions:
    se 3: You have a clean Maya install with nonexisting userSetup.mel and an empty Maya.env file

    Copy Maya.env into your "../[username]/maya/x.x" dir

    Open Maya.env in your favorite text editor (fx. notepad) and change the paths to point to your omtoolbox directory

    Copy userSetup.mel into your "../[username]/maya/x.x/scripts" dir

    Restart Maya

    Can anyone give a more in-depth explanation of how to install this? To me, the instructions are very vague. I haven't used Maya plug-in's before. Thanks guys! :]
  • bugo
    Offline / Send Message
    bugo polycounter lvl 12
    You shouldn't copy and paste those, it's better just see what's on the script/plugin Maya.env and paste via notepad into your Maya.env

    Same applies to userSetup.mel

    If you don't do that, you are going to lose some settings of your previous setup.
  • gray
    I was trying to install this but I didn't understand the help .txt that comes along with it. Here are the instructions:

    Can anyone give a more in-depth explanation of how to install this? To me, the instructions are very vague. I haven't used Maya plug-in's before. Thanks guys! :]

    I realized I was using an older version so I installed version 0.6.1. the directions should be the same for win7 and xp/vista but you have the new users root directory in win7. here is how you do it.

    1)open 2 browsers so you can move files. open one to OMT files. the other to your C: \Users\"your user name"\Documents\maya\2012-x64 dir. this will have your version of maya in the folder name not necessarily 2012. in that dir you should see a prefs dir, scripts dir and a Maya.env file maybe some other folders.

    2) now that you have these folders open copy the pyScripts dir into your maya prefs folder. copy all the files in the scripts folder to your maya prefs scripts folder. copy all the icons in the icons folder to your maya prefs ...\prefs\icons folder.

    3)open the Maya.env from OMT in a text editor and copy and paste that into your maya prefs dir Maya.env file.

    now you need to edit the 2 lines to point to the full path of your local maya scripts folders. so the 2 lines end up looking somthing like this

    MAYA_SCRIPTS_PATH = C: \Users\"your user name"\Documents\maya\2012-x64\scripts
    PYTHONPATH = C: \Users\"your user name"\Documents\maya\2012-x64\pyScripts

    save the file and start maya. you should see a new menu at the top that says OMToolbox.

    the important part is to make sure that the Maya.env has the correct full path to the files. if that is not correct then nothing will work.

    also 0.6.1 does not have docs. 0.5.1 has docs and even videos that show each tool and the key combos to use looks like a few of the tools changed tho. you can download the docs here http://sourceforge.net/projects/omtoolbox/files/omtoolbox/0.5/
  • JValencia
    Offline / Send Message
    JValencia polycounter lvl 10
    Much appreciated, gray! That worked :]
  • sltrOlsson
    Offline / Send Message
    sltrOlsson polycounter lvl 10
    First of we got the Maya bonus tools that everybody SHOULD have. I really got some good stuff in it. I mostly use the UV tool though, it actually REALLY good.


    Then there is an other great UV tools i use is Castor lee's "APU". It's conected with roadkill, the old one. I don't use that at all.. But there is some features in there that's great!

  • Gilgamesh
    Offline / Send Message
    Gilgamesh polycounter lvl 10

    Prefer this for UV tools, although allot of what other tools do I have bound to keys anyway (I do allot of Uv unwrapping and baking here).
  • bugo
    Offline / Send Message
    bugo polycounter lvl 12
    yo Gilgamesh, thats really cool, I'll try this one out.

    Yes, bonus tools is a must have.
  • Grimm_Wrecking
    Offline / Send Message
    Grimm_Wrecking polycounter lvl 8
    fileReload - batch reload of all textures on selected object (diffuse/spec/gloss/etc/etc/etc)

    Saves so much time instead of juggling through the editors.
  • raptoreagle
    hello guys.
    i'm using maya 2012 64bit and i cant get oarelaxverts to work. tried eveything. or is it a 32bit only script?
  • throttlekitty
    Offline / Send Message
    throttlekitty Polycount Sponsor
    do you get an error?
  • jimpaw
    Offline / Send Message
    jimpaw polycounter lvl 9
    As mentioned in This tread before i thing Ninja Dojo is a great script. The new one (Ninja grandmaster) has the coolest feature of all. It has a tab called "Mel". All scripts you put in a certain directory gets a button in the toolbox. so basicly you can shut down all panels in Maya and only work with this toolbox. I think thats awsome. The price is 70 $ ,well worth it.

  • bk3d
    Offline / Send Message
    bk3d polycounter lvl 5
  • [Deleted User]
    Offline / Send Message
    [Deleted User] insane polycounter
    The user and all related content has been deleted.
  • throttlekitty
    Offline / Send Message
    throttlekitty Polycount Sponsor

    [ame=" scripts pack. QUICK OVERVIEW OF MOST INTRESTED SCRIPTS. For Maya from Deniseich. - YouTube[/ame]

    This man is a hero. Tons of fixes/autmations for the little things and some new toys.
  • perfect_paradigm
    Offline / Send Message
    perfect_paradigm polycounter lvl 7

    Auto sets tumble pivot to selection. In other words the camera rotation with Alt + LMB will automatically be set to pivot around new selections.

    Mel script. Only tested in Maya 2014 & 2015.

    PP_AutoSetTumblePivot Download

    Better Collapse Faces:

    Contiguous face selections independently collapsed to their center.

    Works exactly the same as if you ran Merge Faces To Center individually on each separate group of face selection(s).

    Mel script for Maya 2014 & 2015

    PP_CollapseFaces Download

    Modified buildObjectMenuItemsNow:

    1. Prevents move, scale, and rotate tools from blocking RMB object marking menu.

    2. Completes following tools with RMB click:

    a. Create Polygon Tool
    b. Append To Polygon Tool
    c. Insert Edge Loop Tool (when auto complete is off)

    Mel script for Maya 2014 & 2015

    buildObjectMenuItemsNow Mod Download

    Simple instructions for all scripts in their downloads.
  • Fansub
    Offline / Send Message
    Fansub polycounter
    Bumping this thread :)

    If anyone has some useful scripts that can easy up the hard-surface modeling workflow or anything else please share,here are a few ones that I've found on Shon Mitchell's blog :

    Wired : A script that let's you create pipes from any selected curves.Very fast.

    GetBent : Y'all probably know this plugin,really awesome tool to streamline your hard-surface bending process.

    Passerby's Spherify tool : This script completely changed my workflow and i definitely recommend it to any Maya user out there :)

    ZPipeMaker : Another awesome tool ! :)

    Toggle WOS : A small script to toggle on/off Wireframe On Shaded,really useful when you find yourself doing it many times while modeling :
    string $panel = `getPanel -wf`;
    modelEditor -e -wos ( !`modelEditor -q -wos $panel` ) $panel;

    Move/Rotate/Scale toggle
    : This script might be quite annoying when you start using it but by the time it really lets you toggle between these three tools very easily.Plus you have new fresh keyboard hotkeys to assign :poly142:
    string $currentTool = `currentCtx`; setToolTo $gMove;
    if ($currentTool == "moveSuperContext")
    setToolTo $gRotate;
    else if ($currentTool == "RotateSuperContext")
    setToolTo $gScale;
    Wireframe Color : A quick and easy way to change your object's wireframe colors.Really love using this one :D
    //edit: works with joints global string $cursel[];
     proc string changeColor(){
         global string $cursel[];
         if(size(`ls -sl`)>0 || size($cursel)> 0){
             if(size(`ls -sl`)>0){
                 $cursel = `ls -sl`;
             select -cl;
             for($obj in $cursel){
                 string $shap[] = `listRelatives -s -f $obj`;
                 $v = `colorIndexSliderGrp -q -v "colorSlider"`;
                 if($shap[0] == ""){
                     setAttr ($obj+".overrideEnabled") 1;
                     setAttr ($obj+".overrideColor") $v;  
                 for($s in $shap){ 
                     setAttr ($s+".overrideEnabled") 1;
                     setAttr ($s+".overrideColor") $v;  
         return 1;
     proc plop(){
         global string $cursel[];
         select -r $cursel;
         $cursel = {};
     string $window = `window -title "Wireframe Color"`;
     string $slid = `colorIndexSliderGrp -label "Select Color" -min 0 -max 31 -cc "plop()" -dc "changeColor()" "colorSlider"`;
     showWindow $window;
    //A requests :

    Is there a way i can replace all my edge to have the same distance separating them,like in here ?


    One issue i have using Passerby's sSpherify is that i don't always get nice circula shapes when my geometry is a not very regular,so it would be a quick way to place all my vertices/edges automaticaly at the same distance :)

    Edit : Here is a script that does what i want in Max
  • Lamont
    Offline / Send Message
    Lamont polycounter lvl 11
    Fansub, if the verts need to be in a straight line, it should be simple to make, something like:

    result = (point1_x, point1_y, point1_z) + (new_x, new_y, new_z) * ((point2_x, point2_y, point2_z) - (point1_x, point1_y, point1_z))

    set pos(result)

    new_ should be an array of data. How you decide to take the first and last points and figure out what is between is up to you.
  • CheeseOnToast
    Offline / Send Message
    CheeseOnToast polycounter lvl 15
    I'm getting a ton of use from ZHGG tools. The stuff under the "regularize" menu is fantastic.

  • MirtaFelix
    Offline / Send Message
    MirtaFelix vertex
    Hi, I can not seem to get the sp Paint3d tool work at all. What I've tried: 

    1. putting the prefs folder here as it is: 
        C:\Program Files\Autodesk\Maya2016\icons\ 
        putting the scripts folder here as it is: 
        C:\Program Files\Autodesk\Maya2016\scripts\ 
    2. putting the prefs folder here: 
        C:\Program Files\Autodesk\Maya2016\icons\ 
        putting the scripts folder here: 
    3. putting the prefs folder here: 
        putting the scripts folder here: 

    With the first three attempts I get the error: Cannot find procedure "spPaint3d". 

    4. So I tried taking out the files from the folder, such as taking out spPaint3d maya script file, spPaint3dContext.py and spPaint3dGui.py and just putting it here:  C:\Program Files\Autodesk\Maya2016\scripts\
    This way Maya can not seem to find the spPaint3dGui.py and I get this different error.
    I know it must be something simple, but for me it just does not work. 
    I also tried taking out the elements from the prefs/icons folder and leaving it here: C:\Program Files\Autodesk\Maya2016\icons\
    and I get the same error. 

    I also tried running it from Python since the Mel did not work. No success so far. Here are the descriptions I found on Creative Crash: 
    • Close Maya.
    • If applicable, delete the files from an earlier spPaint3d version (both .py and .pyc files of this script may need to be removed).
    • Unzip the script in the appropriate user Maya folder.
    • Make sure the script files go to the script folder, the icons should go to the prefs/icons folder.
      The help folder is not used at runtime and can be anywhere, if there at all.
    • Make sure the PYTHONPATH environment variable is set properly in the maya.env file or the script may not run properly. Maya 2008 has been reported to have a faulty default path for python.
    • Restart Maya.
    • Execute the script by typing "spPaint3d" in the MEL script editor command line.
    • For future use, the same command can be put into a shelf as is.

      I am using Maya 2016. Can someone please help? 

      So, I managed to figure it out. If anyone happens to run into the same problems, you have to take the files out of the installation folders and put them into the appropriate folders which are: 
      Put the 3 script files here from the scripts folder: C:\Users\Username\Documents\maya\2016\prefs\scripts
      and put the prefs/icons folder files here: C:\Users\Username\Documents\maya\2016\prefs\icons. 
  • throttlekitty
    Offline / Send Message
    throttlekitty Polycount Sponsor


    It lets you hide polygons! Plus you can't select them while hidden, very handy.
  • throttlekitty
    Offline / Send Message
    throttlekitty Polycount Sponsor
    I finally reordered the standard right-click menu, nothing was changed or removed. I tend to create a few basic materials and use RMB to assign them,but it was annoying that it was at the bottom of a long list. Delete my _tk suffix and place it in your user script folder to safely override the menu or remove it if you don't like it.
    Dropbox Link for 2016.5.


  • jengy
    Offline / Send Message
    jengy polycounter lvl 7
    Blendshape Bake Script!
    Note: SAVE MAYA BEFORE USING! (Always a good sign...right?)
    Hey Polycounters,

    I made a mel script that converts almost any type of polygonal mesh animation to a blendshape.
    This allows you to export things like MASH, deformer animation, and NCloth out from Maya into engines like Unity. Wow!

    Made this with my co-worker and we've been using it for a few months now.
    It needs testing so please test it! 


    We've thus far have used it for both mobile and PC products.

    Things I'm aware of:
    • It does a crazy selection process that is probably ridiculously weird to look at and inefficient when running the script;
    • The end result DOES make large files;
    • We've been using this script in conjunction with a baking tool that takes the vertex animation information and converts it to a texture for the shader. (Sorry, I didn't make those tools, so I can't give that away);
    • Blendshapes with inbetweens can be expensive...you've been forewarned! :)

    Both I and my artist co-worker are noobie script writers, so any suggestions would be amazing. I hope this helps anyone who is looking to get this type of effect in-game.

    1. Select the mesh that you've animated.
    2. The baker will make the inbetweens of your mesh from the start of the timeline to the end.
    3. The baker will spit out a blendshape mesh that has a blendshape node called "blendshape_geo". 
    4. Rename and export your mesh!
  • throttlekitty
    Offline / Send Message
    throttlekitty Polycount Sponsor
    This isn't a script but something small I've only just learned.

    You can double-click icons in the outliner to show that thing in the Attribute Editor. It also doesn't change your selection.
  • sylvain
    Offline / Send Message
    sylvain null

    I'm happy to announce that the Maya Work Speed script is available for pre-order here https://gumroad.com/l/speedworkflow
    Speed workflow is a script for Maya that easily speeds up your workflow. With tons of tools, you can edits topology, make very fast high poly, use Automatic Uvs and more!

  • onionhead_o
  • rkadich
    Offline / Send Message
    rkadich polycounter lvl 4
    'Quick select sets'  is powerful but somewhat underused Maya feature.
    So I decided to change it and created a selections management panel for Maya.
    It's free and can be downloaded here:

Sign In or Register to comment.