What's new in the Maya 2026 devkit
API Changes
MDagPath
Added a method to get matrix for matching local matrix.
static MStatus matchLocalMatrix(const MDagPath & source,
const MMatrix & localMatrix,
MTransformationMatrix& transformationMatrix,
bool preserveOffsetParentMatrix = true,
bool preservePivot = true,
bool preservePivotOffset = false);
MDGModifier
Added a method for locking/unlocking the plug.
MStatus setPlugLockState( const MPlug & plug, bool newState );
MRampAttribute
Added two methods to get color and values at positions.
void getColorsAtPositions (MFloatArray& positions, MColorArray& colors, MStatus* ReturnStatus = nullptr);
void getValuesAtPositions (MFloatArray& positions, MFloatArray& value, MStatus* ReturnStatus = nullptr);
MGeometryExtractor
Added a method for extracting geometry.
MGeometryExtractor(const MHWRender::MGeometryRequirements& requirements,
const MObject& polyObject, ::MHWRender::MPolyGeomOptions options, MStatus* status = NULL);
Using MObject instead of MDagPath in the MGeometryExtractorConstructHelper
void MGeometryExtractorConstructHelper(const MHWRender::MGeometryRequirements& requirements, const MObject& geomObject,
::MHWRender::MPolyGeomOptions options, MStatus* status);
MFnMesh
Added enums for supporting boolean operations.
OPENMAYA_ENUM(BooleanOperation,
//! Boolean union
kBooleanUnion = 1,
//! Boolean difference A-B
kBooleanDifferenceAB,
//! Boolean intersection
kBooleanIntersection,
//! Boolean difference B-A
kBooleanDifferenceBA,
//! Boolean split
kBooleanSplit,
//! Boolean split edges
kBooleanSplitEdges,
//! Boolean hole punch
kBooleanHolePunch,
//! Boolean cut out
kBooleanCutOut
);
//! Boolean geometry mode
OPENMAYA_ENUM(BoolGeometryMode,
//! Geometry Mode mesh
kMeshGeometryMode,
//! Geometry Mode legacy mesh
kLegacyMeshGeometryMode,
//! Geometry Mode volume
kVolumeGeometryMode
);
Added a method for boolean operations.
MStatus booleanOperations(const MUintArray &op, const MObjectArray& meshes, BoolClassification classification = kNormalClassification, BoolGeometryMode geometryMode = kMeshGeometryMode, float voxelSize = 1.0f);
M3dView
Added the following methods:
unsigned int numViewSelectedObjects( MStatus *ReturnStatus = nullptr ) const;
MStatus viewSelectedObject( unsigned int index, MStringArray& objectStrings ) const;
bool viewSelected( MStatus *ReturnStatus = nullptr ) const;
Fixed typo of the parameter in the getM3dViewFromModelPanel.
MFnVolumeLight
Added an enum for setting axis for faces.
OPENMAYA_ENUM(Axis,
kXaxis, //!< \nop
kYaxis, //!< \nop
kZaxis //!< \nop
);
Added a method for setting face axis.
MStatus setFaceAxis ( const MFnVolumeLight::Axis axis );
MHWGeometry
Added and enumeration and methods for setting and getting culling modes.
OPENMAYA_ENUM(CullMode,
/*!
No face is culled.
*/
CullNone,
/*!
Front face is culled.
*/
CullFront,
/*!
Back face is culled.
*/
CullBack
);
// Set culling mode
void setCullMode(CullMode cullMode);
// Get current culling mode
CullMode cullMode() const;
MShaderManager
Added two stock shaders.
k3dOpenPBRSurfaceShader,
k3dIsotropicOpenPBRSurfaceShader,
MMessage
Added a pointer to a callback function which takes a string and a boolean.
typedef void (*MStringBoolFunction)( const MString& str, bool state, void* clientData );
MUiMessage
Add a callback to be notified when the view selected state or view selected objects for any 3D view changes.
static MCallbackId add3dViewSelectedChangedCallback(
MUiMessage::MStringBoolFunction func,
void * clientData = nullptr,
MStatus * ReturnStatus = nullptr );
This method isn't available in .NET API.
MPxImagePlane
Added flip the image from left to right or upside down.
static MObject flipInX;
static MObject flipInY;
MPxShadingNodeOverride
Added a function that returns if the shading node can handle consolidated geometry.
virtual bool handlesConsolidatedGeometry() const;
Added a method to get fragment name considering if it is textured.
virtual MString fragmentName(bool textured) const;
Added an updating shader method based on whether it is textured.
virtual void updateShader(
MShaderInstance& shader,
const MAttributeParameterMappingList& mappings,
bool textured);
Scripting changes
- The
-tangentScaleand-tangentLineThicknessoptions have been added to theaddMetadatacommand. - The
animContextManagercommand has been added. - The
cutViewcommand has been added. - The
-affectedLayersAttributeoption has been added to theanimLayercommand. - The
-computeModifiesoption has been removed fromattributeQuerycommand. - The
-dumpInfooption has been added to theblendShape,boneLattice,cluster,deformer,deltaMush,nonLinear,sculpt,sculptTarget,skinCluster,softMod,tension,transferAttributes,wire,jointLattice, andlatticecommands. - The
-detailedMessageoption has been added to theconfirmDialogcommand. - The
-leveloption has been removed fromdbtracecommand. - The
-noEvaluationoption has been removed fromgetAttrcommand. - The
-orderedoption has been added to thekeyingGroupcommand. - The
-ufeCamerasoption has been added to thelistCamerascommand. - The
-pluginPathoption has been added to theloadPlugincommand. - The
-selectPastedoption has been added to thepasteKeycommand. - The
-stepKeyLoopoption has been added to theplaybackOptionscommand. - The
-exposure,-gamma, and-partialSaveoptions have been added to theplayblastcommand. - The
polyGWDebugCmdcommand has been added. - The
-colorand-showPercentTextoption has been added to theprogressBarcommand. - The
-modaland-showProgressPercentTextoptions have been added to theprogressWindowcommand. - The
-stopIprRenderProcedureand-supportUFECamerasoption has been added to therenderercommand. - The
-orderedoption has been added to thesetXformManipcommand. - The
-modaloption has been added to thewindowcommand. - The
-maximumHeightand-maximumWidthoption has been added to theworkspaceControlcommand. - The
-parentSpaceoption has been added to thexformcommand. - The
mlDeformercommand has been added.
New nodes
openPBRSurface
