Some of my favorite MEL scripts

If you are not a user of Maya I dont think you will get much satisfaction from this blogpost. This post is made for all true Maya gurus! ;)
Recently I made a re-install of windows on my workstation so I started to backup all my old MEL scripts. It’s crazy how my workflow is tied up around MEL scripts. I will now list some of the scripts I have integrated into my workflow.

AeSkinWeightsTransfer is a MEL script built by Anders Egleus. It’s core use is to save and load smooth skin weights. I have never meet Anders but he is one of my biggest heroes. I have been using this script for almost 10 years now. I think that almost all my rigs have benefited from this script in one stage or another. It’s a must have!

OutlinerPlus is a script similar to the standard version of Outliner that comes with Maya by default. In OutlinerPlus you can filter the list to only show cameras, joints, lights, material and so on. This is very convenient when working with larger scenes. I think the most used feature in this script for me is the list of animation curves. No more hunting for lost animation curves. One feature I would love to add to this script is the possibility to make custom “View modes”. This MEL script is free but dont forget to ask Tim for permission if you are using this commercially.

Correction, I just got a mail from Tim: Making custom “View modes” is a main feature of OutlinerPlus. Check the documentation for a detailed description. You just need to edit the OutlinerPlus.ini with a text editor to create new view modes or edit the predefined ones. No programming know how requiered.

timeScale is a home brewed script by my old animation mentor Rickard Söderström. The script select all animation curves in the scene and scale it to the specified time. I have been using this simular to how I use the animation curves view mode in OutlinerPlus. I don’t think that I’m allowed to spread the script but don’t forget to take a look at Rickards homepage.

Edit: I have been given permission to distribute the script from Rickard! Thanks!

cometRename is a renaming script that allows basic Search & Replace, Add Prefix, Add Suffix and Rename & Number. I don’t have much to say but this script have saved me a lot of time through the years. The script is developed by Comet Cartoons. He has bunch of nice scripts on his homepage and some tutorials.

softModManipulator is a handy script to get more control over your facial rigs. The script will add the possibility integrate the Soft Modification tool into the rig so you can make tweaks to the Blend Shapes when animating. I remember that Jeff Lew (the creator of the old classic Killer Bean short) made a tutorial back in the day but I can’t find it. Anyhow, it’s a good script.

Rapid Rig: Advanced is an auto rig that will setup joints and a complete setup in minutes, a process which can take up to several days if you build it by yourself. I have used this for some of the characters in The Journey Down.
I like the rig a lot. The only problem I have found yet is that the setup is missing limitations of the knees joints. That makes it slow to animate and sometimes produces ugly results to the lower part of the body. If the knee problem is solved I would absolutely recommend this rig for everyone.
The price tag is 40 USD, that’s just pocket money for this kind of advanced rigs.

djRivet is a simpel script that constrain things to deforming surfaces using follicles. Perfect when you want buttons or buckles on your character.
The creator of this script is David Johnson. His blog is one of my favorite blogs for technical Maya geek stuff.

Don’t hesitate to comment on this post if you know about a script that would fit me or if you have any questions.
Good advice is always appreciated! :D

Posted in: Uncategorized
  • Rickard Söderström

    Great links Henrik, and please feel free to spread my little script. See you!

    • Henrik Englund

      Ohh, thanks! I have added the script now.

      • Naoki

        hmmm,source order in maya is a bit more complex than that .first up if you have set seystm based environment variables to wherever your maya installation resides, -which is normally done by the maya installer when your installation goes as intended- then maya finds the following folder containing MEL scripts in this order:- program-folder: print(`getenv MAYA_LOCATION `+ /scripts/* );- user script-directory: print( `internalVar -userAppDir`+ scripts );- maya version specific script-directory: print( `internalVar -userScriptDir`);although the may-version specific scripts-folder gets sourced last i prefer to put my scripts in the second location, because i don’t need to copy any scripts to any new directory when another maya-version comes out- this directory gets sourced by them all!so there’s really no need to specifically source a scripts like that, unless of course you want to RUN the script on maya-startup!that’s something competely different, though!it is considered good practice however not to run scripts by simply sourcing them. that has to do with the automatic sourcing process described above: every script in those folders get sourced on maya startup- make no mistake about that! so, better do it like this:eval( source \ “+`internalVar -uad` + scripts/nicescript.mel\ “) ;and if this were a shelfbutton, or if you wanted to run it on startup, you would add the call to the function as well:nicescript();in early versions of maya your version of the source’ command worked like you typed it; nowadays source’ often fails for reasons that escape me right now, but with eval’ i never had these problems!HIHb.