What was new in MAXScript in 3ds Max 2026
This topic gives you a quick overview of the MAXScript language changes and improvements in 3ds Max 2026 and updates. For details on each feature, please follow the links to the respective documentation pages.
New in MAXScript in 3ds Max 2026
|
|
| Menu System |
The CuiDynamicMenu interface AddItem() method contains two new optional arguments for specifying an icon and tooltip. |
| Menu System |
The CuiDynamicMenu interface contains a new convenience function AddMacroScriptAction() for adding macroScript actions in dynamic menus using its name and category. |
| Menu System |
The CuiMenu interface contains a new convenience function CreateMacroScriptAction() for adding macroScript actions in menus using its name and category. |
| Color Management |
Added a new optional keyword argument, fileType, to the GetDefaultOutputConversion() and SetDefaultOutputConversion() methods of the ColorPipelineMgr interface. |
| Color Management |
Added doDisplayTransform:<boolean> parameter to setclipboardBitmap global function, Image button, Angle UI, ImgTag UI, and createDialog. For Bitmap UI, the keyword arg is doDisplayTransformBitmap. |
| Color Management |
Added colorContext keyword argument for ColorPicker UI. |
| Color Management |
DEPRECATION: iDisplayGamma interface was not safe to use with OCIO modes and has already been marked as deprecated in the previous version. Now it is removed completely. Please use ColorPipelineMgr interface which supersedes iDisplayGamma. |
| PreserveStackPosition |
Added a system global, PreserveStackPosition, which gives the option to return back to where you were in the modifier stack when reselecting. |
| Angle and Percent Snap |
snapMode struct contains new system globals for angle and percent snap. |
| UserGridSettings interface |
A new UserGridSettings interface to expose User Grids tab in the Grid and Snap settings dialog. |
| List Controllers |
List controllers have a new property .tag, which enables artists to know which of the controller lists serve what purpose. |
| Scene File Personal Info |
Added the clearMAXFilePersonalInfo method to remove the User Name and Computer Name file property entries from external scene files. For users who want to save the computer name and user name in an external scene file file, the following methods have been added: maxOps.GetSceneFileComputerName(),maxOps.SetSceneFileComputerName(),maxOps.GetSceneFileUserName(),maxOps.SetSceneFileUserName(). |
| File Notifications Callbacks |
Added a third element to callbacks.notificationParam() to indicate whether the scene file was loaded or saved successfully for #filePostOpenProcess and #filePostSaveProcess. |
| createDialog |
Added hidden:<boolean> keyword arg to createDialog that defaults to false. The dialog is created hidden if set to true and if modal is not specified or is set to false. |
| Biped |
Added #extraBonesNameMatch argument for biped.loadBipFile. |
| maxops.FindNodeFromBaseObject added keywords |
Added handleBranching:<boolean> and preferSelected:<boolean> keywords to maxops.FindNodeFromBaseObject. |
| CSharpUtilities.CSharpCompilationHelper |
Added a .NET class/method static Assembly CSharpUtilities.CSharpCompilationHelper.Compile(string code, string[] additionalAssemblies)to compile c# code. |
Notes
3ds Max has transitioned from .NET Framework 4.8.1 to .NET Core 8. However, some features available in the previous framework are not currently supported in .NET Core 8. This may affect certain plugins and scripts that rely on functionalities exclusive to the older framework.
New in MAXScript in 3ds Max 2026.1
|
|
| Previously Undocumented Items |
outputColorConversion, outputColorSpace, outputDisplay and outputViewTransform as argument keywords for the Render() and Bitmap save() functions, and as read-only properties for the Bitmap Value are now documented. |
| MXSCallstackCaptureDepth |
Added MXSCallstackCaptureDepth context and MXSCallstackCaptureDepth MAXScript System Global Variable to control number of stack levels captured on exception. |
| MAXScript minidump creation control |
Added createMiniDumpOnGCException and createMiniDumpOnMxsSystemException MAXScript System Global Variables to control MiniDump creation on garbage collection exeptions and System exceptions. |
| Change Handlers |
Added method getAllChangeHandlers and properties broken, refDeleted and id for Change Handlers. |
| getNodeByPath |
Added method getNodeByPath to get nodes by path name. |
| systemTools.debugBreak |
Added method systemTools.debugBreak() to break in external debugger if attached. |
| Field Helper |
Added helper Field. |
| Field Probe Controllers |
Added controllers Float_Field_Probe_Control, Point3_Field_Probe_Control, and Point4_Field_Probe_Control. |
| Normalize_Spline2 animatable parameters |
Normalize_Spline2 parameters now animatable: insertNum, length, NumKnots, RetainPercent. |
| Optimize_Spline animatable parameters |
Optimize_Spline parameters now animatable: reducedMaxKnots, reducedMinKnots, subsegment. |
| Optimize_Spline new parameters |
Optimize_Spline new parameters: angleThreshold, collinearKnots. |
| Push multiple new parameters and interfaces |
Push multiple new parameters added and Push interface added. |
| XForm multiple new parameters |
XForm multiple new parameters added. |
| Viewport Zoom/Pan/Dolly/Rotate methods |
Multiple new Viewport Zoom/Pan/Dolly/Rotate methods added to maxOps. |
| Miscellaneous maxOps methods |
loadMaxThumbnail and DisplayObjectPropertiesDialog methods added to maxOps. |
| Data_Channel new method |
Data_Channel new method GatherOperators added. |
| Attribute Transfer Modifier |
Added modifier Attribute_Transfer. |
| Added Edit > Reset Zoom to Scripting Listener menu and right-click menu |
Listener Commands. |
Added PathName constructor <node> as pathname |
PathName Values. |
Added #viewportCameraChanged General Event Callback Notification |
General Event #viewportCameraChanged added. |
Added #numFrames: keyword argument to methods that display or capture the MAXScript call stack |
threads, stack, assert. |
| Added Time literal corresponding to how 3dsMax displays SMPTE |
Time Values. |
Added #pickFrozenAndUnfrozen: keyword argument to pickObject and pickAnimatable |
Picking Scene Nodes By Hit. |
New in MAXScript in 3ds Max 2026.2
New in MAXScript in 3ds Max 2026.3
|
|
| Python Interface |
Added the kwargs keyword, which allows you to pass case-sensitive parameter names in a Dictionary to Python functions, and parameters that might otherwise have naming conflicts with MAXScript keywords. See Executing Python from MAXScript for an example. |
Fixed keyword handling of dotnetcontrol constructor |
dotnetcontrol |
| Conform modifier new properties |
Conform properties distance, distanceFalloff, and useDistance added. |
| Material_Switcher properties and methods |
Material_Switcher property selection now animatable, method UpdateShowPreviewsDefault added. |
| MultiMaterial new method |
MultiMaterial method UpdateShowPreviewsDefault added. |