C++ API Changes in Maya 2016

This page provides a detailed list of the changes made to the C++ API in Maya 2016 since the first 2015 release.

New classes

Removed classes

Modified classes

Inheritance

MPxDeformerNode now derives from MPxGeometryFilter.

New class methods

M3dView

M3dView::makeSharedContextCurrent()

MAnimCurveClipboardItemArray

New constructor that accepts an initial array size and default value.

MAnimCurveClipboardItemArray::setLength()

MCommandResult

Can now return MInt64 results.

MDGMessage

MDGMessage::addNodeChangeUuidCheckCallback()

MDGModifier

MDGModifier::newPlugValueInt64()

MDGModifier::pythonCommandToExecute()

MDataHandle

MDataHandle::asInt64()

MDataHandle::asGenericInt64()

MDataHandle::setInt64()

MDataHandle::setGenericInt64()

MDrawRegistry

MDrawRegistry::registerComponentConverter()

MDrawRegistry::deregisterComponentConverter()

MFloatPoint

MPoint

MFloatVector

MVector

These classes now have constructors for each other.

MFnCamera

MFnCamera::isDisplayGateMask()

MFnComponent

MFnComponent::setWeight()

MFnComponent::setWeights()

MFnDagNode

MFnDagNode::objectColorType()

MFnDagNode::setObjectColorType()

MFnDagNode::objectColorIndex()

MFnDagNode::objectColorRGB()

MFnDagNode::objectColorRGB()

MFnDependencyNode

MFnDependencyNode::setUuid()

MFnDependencyNode::uuid()

MFnMesh

MFnMesh::getAxisAtPoint()

MFnMesh::getPinUVs()

MFnMesh::setPinUVs()

MFnNumericAttribute

MInt64 versions of MFnNumericAttribute::getDefault() and MFnNumericAttribute::setDefault()

MFnPlugin

MFnPlugin::registerRenderer()

MFnPlugin::deregisterRenderer()

MFnPlugin::registerAnimCurveInterpolator()

MFnPlugin::deregisterAnimCurveInterpolator()

MFnSingleIndexedComponent

MFnSingleIndexedComponent::elementMax()

MFragmentManager

MFragmentManager::removeFragment()

MFrameContext

MFrameContext::getHwFogParameters()

MGlobal

MGlobal::getAbsolutePathToResources()

MGlobal::setRichSelection()

MGlobal::getPreselectionHiliteList()

MGlobal::setPreselectionHiliteList()

MItMeshPolygon

MItMeshPolygon::getAxisAtUV()

MMeshSmoothOptions

MMeshSmoothOptions::setOpenSubdivVertexBoundary()

MMeshSmoothOptions::openSubdivVertexBoundary()

MMeshSmoothOptions::setOpenSubdivFaceVaryingBoundary()

MMeshSmoothOptions::openSubdivFaceVaryingBoundary()

MMeshSmoothOptions::setOpenSubdivSmoothTriangles()

MMeshSmoothOptions::openSubdivSmoothTriangles()

MMeshSmoothOptions::setOpenSubdivCreaseMethod()

MMeshSmoothOptions::openSubdivCreaseMethod()

MNodeMessage

MNodeMessage::addUuidChangedCallback()

MPlug

MPlug::asInt64()

MPlug::setInt64()

MPolyMessage

MPolyMessage::addUVSetChangedCallback()

MPxConstraintCommand

MPxConstraintCommand::setRestPosition()

MPxContext

MPxContext::drawFeedback()

MPxDrawOverride

MPxDrawOverride::refineSelectionPath()

MPxDrawOverride::updateSelectionGranularity()

MPxGeometryOverride

MPxGeometryOverride::refineSelectionPath()

MPxGeometryOverride::updateSelectionGranularity()

MPxManipContainer

MPxManipContainer::addPlugToInViewEditor()

MPxManipulatorNode

MPxManipulatorNode::shouldDrawHandleAsSelected()

MPxNode

MPxNode::postEvaluation()

MPxNode::preEvaluation()

MPxNode::schedulingType()

MPxShaderOverride

MPxShaderOverride::overridesNonMaterialItems()

MPxShaderOverride::nonTexturedShaderInstance()

MPxSubSceneOverride

MPxSubSceneOverride::setAllowTransparentInstances()

MPxSubSceneOverride::areUIDrawablesDirty()

MPxSubSceneOverride::hasUIDrawables()

MPxSubSceneOverride::addUIDrawables()

MPxSubSceneOverride::updateSelectionGranularity()

MPxSurfaceShape

MPxSurfaceShape::getComponentSelectionMask()

MRenderer

MRenderer::GPUmaximumOutputTargetSize()

MRenderer::setOutputTargetOverrideSize()

MRenderer::getOutputTargetOverrideSize()

MRenderer::unsetOutputTargetOverrideSize()

MRenderer::NotificationCallback (new callback typedef)

MRenderer::addNotification()

MRenderer::removeNotification()

MRenderer::notificationCount()

MRenderer::presentOnScreen()

MRenderer::setPresentOnScreen()

MRenderer::useGradient()

MRenderer::clearColor()

MRenderer::clearColor2()

MRenderItem

MRenderItem::setSupportsAdvancedTransparency()

MRenderItem::supportsAdvancedTransparency()

MRenderItem::setShaderFromNode()

MRenderItem::isShaderFromNode()

MRenderItem::selectionMask()

MRenderItem::setSelectionMask()

MRenderItem::availableShaderParameters()

MRenderItem::getShaderBoolParameter()

MRenderItem::getShaderIntParameter()

MRenderItem::getShaderFloatParameter()

MRenderItem::getShaderFloatArrayParameter()

MRenderItem::LinkLostCallback (new callback typedef)

MRenderTarget

MRenderTarget::freeRawData()

MRenderUtil

MRenderUtil::noiseTableSize()

MRenderUtil::noiseTableCubeSide()

MRenderUtil::valueInNoiseTable()

MRenderUtil::noise1()

MRenderUtil::noise2()

MRenderUtil::noise3()

MRenderUtil::noise4()

MRenderUtilities

MRenderUtilities::drawSimpleMesh()

MRenderUtilities::renderMaterialViewerGeometry()

MRichSelection

MRichSelection::setSelection()

MSceneMessage

MSceneMessage::addNamespaceRenamedCallback()

MSelectionList

MSelectionList::add() that takes a MUuid

MShaderInstance

MShaderInstance::annotationAsInt()

MShaderInstance::annotationAsFloat()

MShaderInstance::annotationAsString()

MShaderInstance::parameterSemantic()

MShaderInstance::parameterDefaultValue()

MShaderInstance::resourceName()

MShaderInstance::uiWidget()

MShaderInstance::uiName()

MShaderInstance::techniqueAnnotationAsString()

MShaderManager

MShaderManager::getEffectsTechniques()

MShaderInstance

MShaderInstance::createShaderInstanceWithColorManagementFragment()

MShaderInstance::techniqueAnnotationAsInt()

MShaderInstance::techniqueAnnotationAsFloat()

MShaderInstance::passAnnotationAsInt()

MShaderInstance::passAnnotationAsFloat()

MShaderInstance::passAnnotationAsString()

MSwatchRenderBase

MSwatchRenderBase::enableSwatchRender()

MTexture

MTexture::freeRawData()

MTextureManager

MTextureManager::acquireTexture() that accepts MTextureArguments

MTimeArray

MTimeArray::copy()

MUIDrawManager

MUIDrawManager::setFontIncline()

MUIDrawManager::setFontWeight()

MUIDrawManager::setFontStretch()

MUIDrawManager::setFontLine()

MUIDrawManager::lineList()

MUIDrawManager::lineStrip()

MUIDrawManager::points()

MUIDrawManager::icon()

MUIDrawManager::getIconNames()

MUIDrawManager::beginDrawable() that accepts name and nameIsPickable params

MWeight

MWeight::setInfluence()

MWeight::setSeam()

Removed class methods

MPxGlBuffer

MPxGlBuffer::open()

MPxGlBuffer::close()

MPxGlBuffer::drawable()

MPxGlBuffer::context()

MPxGlBuffer::display()

MPxGlBuffer::visual()

MPxGlBuffer::setUseExternalDrawable()

MPxGlBuffer::setDoubleBuffer()

MPxGlBuffer::setDisplay()

MPxGlBuffer::setDrawable()

MPxGlBuffer::setVisual()

Modified class methods

MFnMesh

MFnMesh::extrudeFaces() and MFnMesh::extrudeEdges() now accept thickness and offset arguments.

MFnNurbsSurface

MFnNurbsSurface::projectCurve() now accepts a direction argument.

MPxPolyTweakUVInteractiveCommand

MPxPolyTweakUVInteractiveCommand::setUVs() now accepts a uvSet argument

MRenderUtilities

MRenderUtilities::acquireSwatchDrawContext() and MRenderUtilities::acquireUVTextureDrawContext() both now take optional color and depth targets.

MRenderUtilities::releaseDrawContext() takes an optional releaseTargets flag.

MPxSubSceneOverride

MPxSubSceneOverride::getSelectionPath() was previously flagged as not implemented.

MPxSurfaceShape

MPxSurfaceShape::getShapeSelectionMask() was previously flagged as not implemented.

New public class members, enumerations and enumeration values

M3dView::DisplayObjects

M3dView::kDisplayParticleInstancers

MFn

enum Type

MFn::kDeltaMush

MFn::kMatrixArrayData

MFn::kPolyPinUV

MFn::kAnimLayerClipSingle

MFn::kAnimLayerClipRotation

MFn::kCaddyManipBase

MFn::kPolyModifierManipContainer

MFn::kPluginSkinCluster

MFn::kPluginGeometryFilter

MFn::kPluginBlendShape

MFnAnimCurve::TangentType

MFnAnimCurve::kTangentShared1

MFnAnimCurve::kTangentShared2

MFnAnimCurve::kTangentShared3

MFnAnimCurve::kTangentShared4

MFnAnimCurve::kTangentShared5

MFnAnimCurve::kTangentShared6

MFnAnimCurve::kTangentShared7

MFnAnimCurve::kTangentShared8

MFnAnimCurve::kTangentCustomStart

MFnAnimCurve::kTangentCustomEnd

MFnAnimCurve::kTangentTypeCount

MFnData

enum Type

MFnData::kMatrixArray

MFnNumericData

enum Type

MFnNumericData::kInt64

MFrameContext::PostEffectType

MFrameContext::kViewColorTransformEnabled

MFrameContext::DisplayStyle

MFrameContext::kFlatShaded

MFrameContext::kShadeActiveOnly

MFrameContext::LightingMode

MFrameContext::kNoLighting

MFrameContext::kCustomLights

MFrameContext

MFrameContext::FogMode

MFrameContext::HwFogParams

MGeometry

MGeometry::DataType

MGeometry::Semantic

MGeometry::Primitive

MGeometry::DrawMode

MMeshSmoothOptions

MMeshSmoothOptions::OpenSubdivVertexBoundary

MMeshSmoothOptions::OpenSubdivCreaseMethod

MPassContext

MPassContext::kBeginRenderSemantic

MPassContext::kEndRenderSemantic

MPassContext::kBeginSceneRenderSemantic

MPassContext::kEndSceneRenderSemantic

MPassContext::kSelectionPassSemantic

MPxNode

enum Type

MPxNode::kSkinCluster

MPxNode::kGeometryFilter

MPxNode::kBlendShape

MPxNode

MPxNode::SchedulingType

MPxNode::frozen

MRenderItem

MRenderItem::sSelectionDepthPriority

MRenderItem::RenderItemType

MRenderItem::OverrideNonMaterialItem

MRenderUtilities

MRenderUtilities::MaterialViewerCamera

MRenderUtilities::MaterialViewerLights

MSceneRender::MObjectTypeExclusions

MSceneRender::kExcludeHoldOuts

MSceneRender::MDisplayMode

MSceneRender::kFlatShaded

MSceneRender::kShadeActiveOnly

MSceneRender::kTextured

MSceneRender::MLightingMode

MSceneRender::kNoLight

MShaderManager::MStockShader

MShaderManager::k3dOpacityLookupFatPointShader

MShaderManager::k3dColorOpacityLookupFatPointShader

MShaderManager::k3dFloat2NumericShader

MUIDrawManager

MUIDrawManager::FontSize

MUIDrawManager::TextIncline

MUIDrawManager::TextWeight

MUIDrawManager::TextStretch

TextLine

 

Removed public class members and enum values

MFn

MFn::kAnimLayerClipBlender

MFn::kAnimLayerTestClipBlenderBase

MFn::kAnimLayerTestClipBlender

MFn::kAnimLayerTestClipBlenderRotation

MFn::kPolyCaddyManipContainer

MSceneRender

MSceneRender::MDisplayMode::kShadeNonTextured