ud_MayaTools in Python

Over the years I’ve used so many awesome tools and scripts from other amazing artists, I’ve always wanted to contribute the same way. There are heaps of resources online, books etc on python for Technical artists and I am great full to everyone whose shared their knowledge.

Till date I’ve been writing scripts and tools at various jobs for personal use, to automate my workflow etc. This is my first big attempt to dive deeper into python & Maya API and in turn start creating a tool set . Feel free to use and share these as you wish. Any bugs or suggestions please feel free to get in touch.


Download v 1.2 : ud_MayaTools 

Download v 1.1 : ud_MayaTools 

Download v 1.0 : ud_MayaTools

ud_MayaTools v 1.2: 

Installation – Extract the zip file and replace older files with new ones on your system. Remember to put userSetup.py in the correct location.

Restart Maya.

**New** Tool addition for v 1.2

Introducing ud_RenamerTool:

I know there are alot of renamer tools for Maya. But this was just an exercise to dive deeper into python and Maya. It was a great tool to write and I learned heaps.

To run this tool after installation:

import ud_Renamer


The tool is straight forward really. The image above should be self explanatory.

ud_MayaTools v 1.1:

Installation – Extract the zip file and replace older files with new ones on your system. Remember to put userSetup.py in the correct location.

Restart Maya.

Note – I will be keeping the older versions for download as well, just incase.

Updated ud_CameraRigTool:


    • Changed Master camera name to ShotCAM.
    • ShotCAM is now visible throughout for easy access to camera properties.
    • ShotCAM now switches constrains between other camera types when changing Camera Select.
    • Can now use ShotCAM to see through camera for framing shots.
    • Cleaned up a few constrains attributes and locked them.

**New** Tool addition for v 1.1:

Introducing ud_ImportCurveControl:

To run this tool after installation:

import ud_ImportCurveControl

For easy access to all controller shape types for rigging or anything else.

You can expand your collection by placing new ’.ma’ files for each new controller in the ‘ud_mayaTools directory + ‘/rigging/mayaFile/MayaRiggingIcons’

Name your Maya control file appropriately. And The ‘ctrlOptions’ Menu will update with any new *.ma files present in the folder.


1. Select the icon type you want to import.
2. Give it a name before importing

Note – By default the tool adds ‘_ctrl’ after user defined name.

3. Import Simple Control – Would simply import the single control shape.
4. Import Grouped Control – Will create a hierarchy with groups for each controller imported.

For example:

  1. control Name: hand_L
  2. Import Simple Control – hand_L_ctrl
  3. Import Grouped Control – hand_L_space–> hand_L_align–> hand_L_sdk–> hand_L_ctrl

Note – Grouped control hierarchy is just the standard one I follow for any rig.


ud_MayaTools v 1.0:


What is ud_MayaTools?

This will be a collection of tools I’ll attempt to write in Python. The whole purpose for this is to learn python and get familiar with Maya API.

Introducing ud_CameraRigTool:

ud_CameraRigTool is a simple camera rig which can be used for Previs, blocking and final shot setup in Maya. It uses JSON to save camera data and all rig information to external file which can be read and also used to import data onto another camera rig.

At the moment the tool supports Export/ Import with in Maya, but in future I plan to create similar tool for Softimage and share camera data between both applications.(Thats for another day)

ud_CameraRigTool Features:

  • Reference as many Camera Rigs into scene via custom namespaces.
  • Export camera data and all rig information to external JSON file based on rig selection.
  • Import camera data and all rig information from JSON file on to any other camera rig.
  • Can edit external JSON file data and bring animation into Maya.

ud_MayaTools installation:

  1. Extract ud_MayaTools folder anywhere on your system.
  2. Copy the userSetup.py to your “maya\2013.5-x64\scripts” directory.
  3. On initial Maya startup you’ll be asked to browse to ud_MayaTools directory on system.
  4. Once ud_MayaTools directory path is set, run the following python code and create a button:

import ud_CameraRigTool

ud_CameraRigTool Usage:


  1. Set all camera attributes on Master Camera, visible when you first import camera rig.
  2. Using the world controller select a camera type – Free Camera, Camera / Aim, Camera / Aim / Up, as per shot requirement.
  3. In build Measure Tools for convenience.
  4. Visual controllers for Focal DistanceFrustrumNear & Far planes and camera Offset attributes.
  5. Using the included ud_CameraRigTool script you can import as many camera rigs with custom namespaces.
  6. Import and Export camera attribute and data to external JSON file, which can be read in other softwares.


A huge thanks to:

Jeremy Ernst and his Building Maya Interfaces with Python video series on vimeo.

Ryan Trowbridge – Technical Artist at Naughty Dog and his book http://www.maya-python.com/

Awesome guys at http://tdchannel.com/

Chris Zurbrigg’s

Chad Vernon


….. and many more. I’ve learned heaps from all these guys..

Leave a Reply