The following page will give you a quick overview of the MAXScript language changes and improvements in 3ds Max 2016. For details on each feature, please follow the links to the respective documentation pages.
New additions to MAXScript in
3ds Max 2016 are marked with
NEW in 3ds Max 2016:... throughout the MAXScript Reference. The link on the word
NEW will jump back to this page.
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
A360_Cloud_Rendering exposes the A360 Cloud renderer 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
Interface: EditablePoly, 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.