|
Interfaces > Core Interfaces > SME |
The SME Core Interface introduced in 3ds Max 2011 exposes properties and methods related to the Slate Material Editor.
Properties:
sme.activeView : index : Read|Write
Get/set the Slate Material Editor's active View.
Methods:
<void>sme.Open()
Opens the Slate Material Editor.
<void>sme.Close()
Closes the Slate Material Editor.
<bool>sme.IsOpen()
Returns true if the Slate Material Editor is open, false if it is closed.
<integer>sme.GetNumViews()
Returns the number of Node Views as an integer.
<index>sme.CreateView <string>name
Creates a new Node View with the given name and returns its index.
<IObject>sme.GetView <index>index
Returns an IObject:IFP_NodeViewImp object representing the indexed Node View.
<index>sme.GetViewIndex <IObject>view
Returns the index of the given Node View IObject:IFP_NodeViewImp object.
<index>sme.GetViewByName <string>name
Returns the index of the named Node View.
<void>sme.DeleteView <index>index <bool>ask_user
Deletes the indexed Slate Material Editor view.
If the second argument is true, prompts the user for confirmation, otherwise deletes the view without prompting.
<maxObject>sme.GetMtlInParamEditor()
Returns the material or map current displayed in the Parameter Editor of the Slate Material Editor.
sme.SetMtlInParamEditor <maxObject>
Sets the material or map to be displayed in the Parameter Editor of the Slate Material Editor.
Available in 3ds Max 2014 and higher.
<Interface>sme.GetNavigator()
Returns an WndBase Interface to the Slate Material Editor's Navigator.
<Interface>sme.GetMaterialPool()
Returns an WndBase Interface to the Slate Material Editor's Material Pool.
<Interface>sme.GetParamEditor()
Returns an WndBase Interface to the Slate Material Editor's Parameter Editor.
<Interface>sme.GetMainframe()
Returns an WndBase Interface to the Slate Material Editor's Main Frame.
<maxObject>sme.DoMtlBrowseDlg <HWND>parent <DWORD>flags <&boolean>newMat <&boolean>cancel newMat is In and Out parameter cancel is In and Out parameter
Opens a modal Material/Map browser dialog.
The first argument is the window handle of the parent window, use 0 for none.
The second argument is a flags value controlling the display of materials and maps in the dialog. Possible Flag values are:
1,5,9... - Materials, Sample Slots
2,6,10... - Maps
0,3,7,11... - Maps, Materials, Sample Slots
4,8,12... - None
The third by-reference argument will contain true if a new material was created, false if an existing one was picked.
The fourth by-reference argument will contain true if the Cancel button was clicked, false if the OK button was clicked.
|
EXAMPLE |
isNew = false isCanceled = false c = sme.DoMtlBrowseDlg 0 0 &isNew &isCanceled |
<void>sme.OpenMtlBrowseDlg()
Opens the Material Browser Dialog.
<bool>sme.OpenMtlLib <&TSTR>path name:<&TSTR>
path is In parameter
name default value: ""
name is In parameter
NEW in 3ds Max 2021: Opens the material library specified by the file path and optional name. If only the material library file name is specified in the path, the current material library directory is searched for the specified filename. The optional name parameter can specify a path to a library as it is named in the Material Browser, where backslashes denote folder hierarchy. For example, "Maps\OSL\Shiny Things" would open a material library named "Shiny Things" in a folder named "OSL" in the folder named "Maps".
Returns true if the library was successfully found and opened, false if not.
For example:
sme.OpenMtlLib "Nature.mat"
<bool>sme.HasMtlLib <&TSTR>path
path is In parameter
NEW in 3ds Max 2021: Returns true if the specified material library is open in the Slate Material Editor.
<bool>sme.IsMtlLibModified <&TSTR>path
path is In parameter
NEW in 3ds Max 2021: Returns true if the specified material library has been modified (materials have been added, deleted, or changed), false if not.
<bool>sme.SaveMtlLib <&TSTR>path
path is In parameter
NEW in 3ds Max 2021: Saves the specified material library, returning true if successful, false if not.
<bool>sme.SaveMtlLibAs <&TSTR>path newPath:<&TSTR>
path is In parameter
newPath default value: ""
newPath is In and Out parameter
NEW in 3ds Max 2021: Saves a copy of the specified material library from the location and file name specified by
path to the optional
newPath. If
newPath is empty, a file chooser dialog is displayed and the user is prompted for a new path and filename, and the selected path is returned in
newPath.
<bool>sme.CloseMtlLib <&TSTR>path
path is In parameter
NEW in 3ds Max 2021: Closes the material library specified by
path.
Interface: NodeView
Properties:
.name : string : Read|Write
Get/set the name of the Node View.
Methods:
<integer>GetNumNodes()
Returns the number of nodes in the View.
<Interface>GetNode <index>index
Returns the Node Interface of the indexed node from the View.
<Interface>GetNodeByRef <maxObject>ref
Returns the Node Interface to the given Material or Map object reference, or undefined if the reference does not exist in the Node View.
<Interface>CreateNode <maxObject>ref <&point2>pos pos is In and Out parameter
Creates a new node from the given Material or Map object reference at the position specified by-reference.
<void>DeleteSelection()
Deletes the selected nodes.
<void>SelectNone()
Deselects all nodes in the Node View.
Available in 3ds Max 2014 and higher.
<void>SelectAll()
Selects all nodes in the Node View.
Available in 3ds Max 2014 and higher.
<void>SelectInvert()
Inverts the node selection in the Node View.
Available in 3ds Max 2014 and higher.
<Interface by value array>GetSelectedNodes()
Returns the selected nodes in the Node View as an array of Node Interfaces.
Available in 3ds Max 2014 and higher.
<void>SetSelectedNodes <maxObject by value array>refs
Sets the Node View selection to the array of Materials and/or Maps object references provided as argument.
Setting the selection will deselect any other previously selected nodes.
This function will not open any items in the Parameter Editor - you can use the sme.SetMtlInParamEditor() method documented earlier in this topic.
Available in 3ds Max 2014 and higher.
<void>ZoomExtents type:<enum>
type enums: {#all|#selected}
type default value: #all
Zooms the Node View to show all nodes or all selected nodes according to the type optional keyword argument.
Available in 3ds Max 2014 and higher.
Interface: WndBase
Properties:
.position : point2 by value : Read|Write
Get/set the Position of the Node View.
.size : point2 by value : Read|Write
Get/set the Size of the Node View.
.visible : bool : Read|Write
Get/set the Visibility of the Node View.
Methods:
<void>SetFocus()
Sets the focus on the Node View.
<Interface>GetParent()
Returns the WndBase interface of the Parent of the Node View.
Properties:
.name : string : Read|Write
Get/set the name of the Node.
.position : point2 by value : Read|Write
Get/set the Position of the Node inside the Node View.
.selected : bool : Read|Write
Get/set the Selected state of the Node.
Available in 3ds Max 2014 and higher.