The MPxThreadedDeviceNode and MPxClientDeviceNode proxy classes have been added to let you stream data from external sources into the Dependency Graph via custom plug-in nodes. The following new Maya2013/devkit/plug-ins/ examples demonstrate how to use these classes:
New classes have been added to provide callback hooks into Maya's drag-and-drop mechanism:
A group of new classes has been added under the MHWRender namespace to work with index buffers and vertex buffers in Viewport 2.0
New attribute pattern API classes have been added:
You can now easily create a distributable deployment of your plug-in. The site administrator can setup a plug-in as a folder on a network, along with a module description file. Each user's machine should point to the module description file through the MAYA_MODULE_PATH environment variable. This way, making changes to the plug-in is simple even across multiple Maya versions and platforms.
Multiple versions of a plug-in are now supported, where the version used is determined by a combination of the current operating system, the version of Maya, and the language setting (locale). The details of the new module file syntax are outlined in the following section.
The imagePlane node, which was previously a dependency node, is now a shape node (in other words, a DAG node). This may require changes to your scripts and plug-ins.
If you have been using MFnDependencyNode to create imagePlane nodes, you must change your code to use MFnDagNode instead. Similarly, if you were using MDGModifier to create or delete imagePlane nodes, then you must use MDagModifier instead.
Scripts and plug-ins which delete imagePlane nodes may now have to do additional work to clean up the parent transforms.
In addition, to avoid conflicts with some of the standard DAG node attributes, the following imagePlane attributes have been renamed:
previous name | new name |
center (c) | imageCenter (ic) |
centerX (cx) | imageCenterX (icx) |
centerY (cy) | imageCenterY (icy) |
centerZ (cz) | imageCenterZ (icz) |
Scripts and plug-ins that refer to the child attributes by their previous names no longer work.
Scripts and plug-ins that refer to the parent attribute by its previous name (center) appear to work but now return the center of the node's bounding box, and not the center of the image plane, which may be different.