So far, doing some reading and research, I found there are two ways to develop Maya plugins: Using a traditional compiled VC++ .mll plugin or by using Python.
I will start this research by building a simple plugin using Visual Studio 2005 (Visual Studio 8)
1. Start by installing the Plugin Wizard
First step is to setup the Visual Studio environment. Fortunately, Maya includes a Plugin Wizard for Visual Studio 8 (aka Visual Studio 2005) so you can create them easily.
Plugin wizard is found in the following location:
Of course, you can follow the readme instructions, but there's a little change you should do in order to have the plugin working.
a. Unzip the MayaPluginWizard2.0.zip file
a.1 This is the new Step:
Edit the MayaPluginWizard.vsz file, and change the following line:
(For Some reason wizard developers forgot to update this for Visual studio 2005 Developers)
b. Copy the following files:
MayaPluginWizard.vsdir MayaPluginWizard.vsz MayaPluginWizard.ico
c. Copy the MayaPluginWizard folder to
2. Create plugin in Visual Stuio
(This is a sample check box.)???
Is there something missing to finish in this Wizard?
Create a new project, as usual, and click OK. The wizard will show you the screen above. Then you should choose the options you want. By clicking Next you must select the type of plugin you want to create and the Command Name for this plugin (This is the entry point of the plugin in Maya; that is the command you write when calling the plugin)
That's all, you are ready to write your plugin. Please note the Wizard will setup the project so you only have to build the project and the .mll file will be created.
3. Install Plugin in Maya
Open Maya (of course) and go to Window->Preferences->Plugin Manager, click Browse and find the plugin you just created. It should be marked as "Loaded". Check "Auto Load" if you want the plugin to be loaded everytime you start Maya.
4. Execute the Plugin
Open the Script Editor and excecute the command you just created. This is the result from mine:
// Result: MysimpleMelCommand command was successfully excecuted
That's all. I hope it works for you.