Friday, December 16, 2011

Interacting with Maya: A Flow Chart

So, learning how to program is important for a technical animator, but I thought it'd be important to go over how it all works inside of Maya. There are four different programming interfaces inside of Maya (three of those interfaces are programming languages the other one is the Python API). The three languages are MEL, Python, and C++.

MEL: Maya Embedded Language. It's only used inside of Maya and defines/creates all of the Maya GUI options. You can also use MEL to script basic repetitive functions as well, but the downturn is that you can only use it in Maya

Python: Python is a scripting language that was brought into Maya 8.5, and it can do anything MEL can using the maya command engine (Remember import maya.cmds?). Whatever version of Maya you're using it has pre-installed the most stable version of Python that existed wheneve that Maya version was shipped. To check what version of Python your Maya is running type in this code:

import sys

The other upside of Python is that it has existed since 1980 so there's a huge online community and reference material available that isn't as thorough as MEL.

C++ API: This is basically just using C++ to manipulate things in Maya. It runs much faster, but you can use this API inside the Maya User Interface. You have compile the code in reference to what version of Maya you're using and then throw it into Maya within your computer (rather than inside of the application). Also I've heard that C++ is gnarly to look at it and learn. However if you want to try go for it...but this isn't the blog for you in that case.

Python API: This basically the way you can use Python inside of Maya. You can do a lot with Python inside of Maya, and this is what this blog is for. I could list out all the things you can do here and now...but that wouldn't really allow for this Blog to grow. So, now that you a few of the basics down let's go explore python in Maya in the upcoming months of blogging.

Thanks for reading. Again if you've got any questions my email is

No comments:

Post a Comment