The following page will give you a quick overview of the MAXScript language changes and improvements in 3ds Max 2016 and 3ds Max 2016 Extension 1. For details on each feature, please follow the links to the respective documentation pages.
The new
Scripted Animation Controller Plug-ins allow you to write scripted plug-ins in MaxScript for several controller types.
The new
TextPlus GeometryClass class, and related
TextObject2 interface provide MaxScript exposure for the new TextPlus tool. These MAXScript additions
are not yet documented, but will be documented in their final form for the next release.
You can use
showproperties and
showinterfaces on an instance of this class to view a list of currently implemented properties and
methods.
The new
Physical : camera object provides an advanced camera exposing physical lens controls, film width controls
and presets, and built-in exposure gain controls.
The new
iray_Section : helper can be used to produce sections of the scene geometry at render time.
The new
Crease : Modifier can be used to define edge creases on geometry objects.
The new
CreaseSet : Modifier can be used to manage sets of edge creases.
The new
OpenSubdiv : Modifier implements the Pixar OpenSubdiv libraries in
3ds Max.
The new
Alembic_Export : ExporterPlugin can be used to export scene objects to the Alembic .ABC file format.
The new Alembic_Import : ImporterPlugin can be used to import objects from Alembic .ABC files into the scene.
The new
AlembicCamera : Camera class implements the Camera object imported from an Alembic .ABC file.
The new
AlembicContainer : GeometryClass object is used by the Alembic Importer to represent the root for grouping object
imported from the same file.
The new
AlembicObject : GeometryClass object is used to represent a geometry entity imported from an Alembic .ABC file.
The new
AlembicXform : Matrix3Controller is used to load the object transformation animation data from an Alembic .ABC file.
The new
simpleMeshMod Scripted Plug-in class allows the processing of the incoming TriMesh on the stack and is used by the
Max Creation Graph system to implement procedural modifiers.
The new
ATF_Alias_importer : ImporterPlugin exposes the Autodesk Translation Framework Alias file format Importer to MAXScript.
The new
ATF_CATIA_V4_importer : ImporterPlugin exposes the Autodesk Translation Framework CATIA v4 file format importer to MAXScript.
The new
ATF_CATIA_V5_importer : ImporterPlugin exposes the Autodesk Translation Framework CATIA v5 file format importer to MAXScript.
The new
ATF_IGES_importer : ImporterPlugin exposes the Autodesk Translation Framework IGES file format importer to MAXScript.
The new
ATF_JT_importer : ImporterPlugin exposes the Autodesk Translation Framework JT file format importer to MAXScript.
The new
ATF_ProE_importer : ImporterPlugin exposes the Autodesk Translation Framework ProE file format importer to MAXScript.
The new
ATF_Solidworks_importer : ImporterPlugin exposes the Autodesk Translation Framework Solidworks file format importer to MAXScript.
The new
ATF_STEP_importer : ImporterPlugin exposes the Autodesk Translation Framework STEP file format importer to MAXScript.
The new
ATF_UG_NX_importer : ImporterPlugin exposes the Autodesk Translation Framework UG-NX file format importer to MAXScript.
The new
Revit_importer : ImporterPlugin exposes the Autodesk Revit file format inporter to MAXScript.
The new
Multi_Sub_Object : Material exposes the empty multi-sub Material to MAXScript. It provides no properties or methods.
The new
builtin_displace_mdl : textureMap implements a displace shader using the NVIDIA Material Definition Language (MDL).
The new
builtin_function_mdl : textureMap implements a function shader using the NVIDIA Material Definition Language (MDL).
The new
builtin_mdl_multiply_scalar : textureMap implements a multiply by scalar shader using the NVIDIA Material Definition Language
(MDL).
The new
max_physical_camera_lens : textureMap represents the mental ray shader implementation of the new
Physical : camera object.
The new
Float_XRef_Controller : FloatController is used to expose Float parameters of XRef objects.
The new
Point3_XRef_Controller : Point3Controller is used to expose Point3 parameters of XRef objects.
The new
iray__Alpha : RenderElement can be used to output transparency information from the iRay renderer.
The new
iray__Irradiance : RenderElement can be used to output irradiance information from the iRay renderer.
The new
iray__normal : RenderElement can be used to output surface normals information from the iRay renderer.
The new
iray__Matte_Environment : textureMap can be used to output matte information from the iRay renderer.
The new
mr_Ambient_Occlusion : RenderElement can be used to output ambient information from the iRay renderer.
The new
Physical_Camera_Exposure_Control : ToneOperator exposes the Physical Camera Exposure Control to MAXScript.
The new
Interface: Autodesk360 provides methods related to initializing the web services, logging in and out, and
querying login info from the Autodesk 360 service.
The new
Interface: CreaseSetManager provides methods to create and manage CreaseSets.
The new
Interface: CreaseExplorerManager provides methods to manage the Crease Explorer window including programmatically
opening and closing it, as well as loading and saving its configuration to disk.
The new Interface: RevitImportWorkflow exposes no properties or methods.
The new Interface: paramPublishMgr exposes methods to initiate the parameter publishing
and to add a parameter by its index.
In the existing
Chamfer : Modifier, several new properties have been added:
.limiteffect ,
.useminangle ,
.usemaxangle ,
.minangle ,
.maxangle , and
.smoothtoadjacent .
In the existing
DirectX_9_Shader : Material, a new property has been added:
.shaderfxgraph .
In the existing
Edit_Poly : Modifier, several new properties have been added:
.dataChannel ,
.dataValue ,
.hardedgedisplay , and
.hardedgedisplaycolor .
In the existing
Editable_Poly : GeometryClass, several new properties have been added:
.hardedgedisplay and
.hardedgedisplaycolor .
In the existing
Editable_Poly : GeometryClass, several new methods have been added:
.makeHardEdges() ,
.makeSmoothEdges() ,
.selectHardEdges() , and
.selectSmoothEdges() .
In the existing
iRay_Renderer : RendererClass, several new properties have been added:
.displacementDisplaceMethod ,
.displacementParametricSubdivisionLevel ,
.textureCompressionEnabled , and
.textureCompressionMinResolution .
In the existing
max_base_GBuffer_lens : textureMap, several new properties have been added:
.pauseEventLow ,
.pauseEventHigh ,
.pauseEventLow_connected ,
.pauseEventLow_shader ,
.pauseEventLow_paramName ,
.pauseEventHigh_connected ,
.pauseEventHigh_shader , and
.pauseEventHigh_paramName .
In the existing
renderers struct, three new properties have been added:
.renderDialogMode ,
.renderButtonText , and
.target .
In the existing
max_rtt_output : textureMap, a new property has been added:
.elementIndex .
In the existing mental_ray_renderer : RendererClass, several new properties have been added:
.Displace_Method ,
.EnableLIS , and
.LISQuality .
In the existing
Normalize_Spl : Modifier, a new
.Accuracy property has been added.
In the existing
Skin : Modifier, a new property has been added:
.enableDQ .
In the existing
XRefObject : Node, a new property has been added to the IXRefProxy Interface:
.useLocal .
In the existing
XRef_Controller : Matrix3Controller, a new property has been added:
.xrefCtrlStatus .
In the existing
Interface : objXRefMgr, two new properties have been added:
.includeAll and
.enableUseLocalProxySettings .
In the existing
XRef_Material : Material, two new properties have been added:
.enableOverride and
.overrideMaterial .
In the existing
LayerProperties MixinInterface, three new methods have been added:
canDelete() ,
getNumNodes() , and
hasSceneXRefNodesInHierarchy() .
In the existing
Interface: AssetManager, the new method
AssetManager.RemoveMissingAssets() has been added.
In the existing
Interface: maxOps, the new property
maxOps.isRenderActive has been added.
In the existing
Interface: PlacementTool, the two new methods
PlacementTools.ShowOptionDialog() and
PlacementTool.GetCommandMode() have been added.
In the existing
Interface: SteeringWheelOps, the new property
SteeringWheel.loadOptions() has been added.
In the existing
Interface: ViewCubeOps, the new property
ViewCubeOps.loadOptions() has been added.
Several properties have been removed from the existing
mental_ray_renderer : RendererClass:
.FinalGatherMinRadius ,
.FinalGatherMinRadius_View ,
.FinalGatherOnly ,
.FinalGatherPreview ,
.FinalGatherRadius ,
.FinalGatherRadius_View ,
.FinalGatherUseRadiusInterpolation ,
.FinalGatherView ,
.UseFinalGatherMinRadius ,
.UseFinalGatherRadius , and
.view .
In the existing
Egg : Shape, the existing properties have been changed from float to worldUnits type:
.egg_length ,
.egg_thickness , and
.egg_width .
In the existing
Ellipse : Shape, the existing properties have been changed from float to worldUnits type:
.ellipse_thickness ,
.length , and
.width .
In the existing
Interface: EPolyManipGrip, the new enum
#VertexCrease has been added to the two existing methods:
EPolyManipGrip.SetManipulateGrip() and
EPolyManipGrip.GetManipulateGrip() .
In the existing
Interface: AssetManager, the new enum
#MaxCreationGraph has been added to the assetType argument of the two existing methods:
AssetManager.GetAssetId() and
AssetManager.GetAsset() .
In the existing
Interface: FileResolutionManager, the new enum
#MaxCreationGraph has been added to the assetType argument of the two existing methods:
FileResolutionManager.GetFullFilePath() and
FileResolutionManager.GetAssetTypeString() .
In the existing
Interface: maxOps, the existing read-only property
maxOps.productAppID can only contain
#max and the exiting read-only property
maxOps.productID can only contain
#3dsMax in
3ds Max 2016 due to the retiring of
3ds Max Design.
In the existing
Interface: pop, the enums list of the existing property
pop.DisplayType has been changed to remove the
#Segmented option.
A new
LayerManager.doesLayerHierarchyContainNodes() method has been added to the existing
Interface: LayerManager.
A new
LayerManager.deleteLayerHierarchy() method has been added to the existing
Interface: LayerManager.
A new
LayerManager.getDuplicateLayerWithoutSameHierarchyOnMerge() method has been added to the existing
Interface: LayerManager.
A new
LayerManager.setDuplicateLayerWithoutSameHierarchyOnMerge() method has been added to the existing
Interface: LayerManager.
In the existing methods
.SaveViewGraph() ,
.LoadViewGraph() ,
.UnloadViewGraph() ,
.SetViewShadeFragment() , and
.ResetViewShadeFragment() of the
NitrousGraphicsManager Interface, the existing
viewIndex argument type has been changed from <integer> to <index>.
A new
.GetFixedViewportPipeline() method has been added to the
NitrousGraphicsManager Interface.