Material ID Organizer

35 votes
Date Updated: 
Author Name: 

 added support for 0 - 65535 Mateiral IDs (3ds max 2018, 2019 and up)
 - Include not used materials in scene - from SME or Material Editor
 - fixed Select / Filter form Material Editors - SME and Material Editor

 - save settings on dialog close + size and position
 - select / filter from SME and Material Editoe in one button now
 - select / filter from multiple materials in SME

 - fixed red button highlights - for selected IDs - same as in Object ID Organizer

It will let you quickly organize Mat IDs and VRay Effect ID in the scene and create MultiMatteElelemnts:

- Sort materials list by Name, ID, Type or Material Editor Slot
- Multiselect and change ID
- Reset all MatID to 0 (select all -> press 0 button)
- Select on list by ID (switch "change" -> "select" or "add to select")
- Select materials by scene objects
- Add / Delete MuliMatteElements
- Highlight Buttons of used MatIDs Vray Effect IDs


 - added support for max 2018, 2019 and up - supports 0 - 65535 Mateiral IDs
 - fixed error with Corona materials
 - fixed error with VraySky and other maps loaded to Envirement slot
 - checkboxes: include materials from SME or Material Editor (to show materials not used  in scene)
 - fixed Select / Filter form material editors (SME and Material Editor)
 - save settings on dialog close
 - fixed Red button hightlight for IDs higher than 49
 - more options in Add to MultiMatte
    - start from 0 or 1 - ( include 0 toggle)
    - include empty IDs
    - add only new IDs
 - Select / Filter from multiple materials in SME
 - Select / Filter from Material Editor and SME in one button now
 - Red button highlights - for selected IDs - same as in Object ID Organizer
 - faster list load and sort
 - new toolbar icon for light and dark color scheme
 - Support for Corona G-Buffer ID and CMultiMatte
 - fixed activation error on second start
 - Filter - show materials from selected only (MatEditor, SME or Objects)
 - "A" buttons :
    - Automatic Select from... MatEditor, SME or Objects
    - Automatic Filter from... MatEditor, SME or Objects
  - added support for more than 15 MatIDs - requires EffectsChannelEx plugin from Pavel Kuznetsov
  - more ID buttons - with scroll - up to 149 ID
  - switch to use same buttons for Matetial ID Channel or VRay ID Effect Channel
  - ID spinner with Asign and Select Button
  - select material from active SME
- Add / Delete MuliMatteElements
   + custom naming
   + preview of names
   + save base name and basic settings
- focus to new selection when right click on ID buttons
- keyboard shortcuts: Ctrl+A, Ctrl+D, Ctrl+I (select all, deselect, invert selection)
- fixed Refresh All
- Multiselect and change VRay Effect ID
- Right click on buttons - select by ID, Object or MatEditor active slot
- Right click + Ctrl on on buttons - add to selection - select by ID, Object or MatEditor active slot

Coming soon:
- Preview of old MultiMatteElments ( just idea, let me know if you need it )
- Search deeper for all VRayMat even in BlendMat, 2SideMat etc
- Asign Random / Unique IDs

- mID - Material Effect Chanel ID - 0,1,2,3,4,5,.. 65535 in 2018, 2019 and up
    and up to 255 in max 2017 and lower with EffectsChannelEx by Pavel Kuznetsov
- vcOr - Vray / Corona - Override Material ID - On, Off, --
- vcID - Vray Mtl Effect ID / Corona Mtl G-Buffer ID - 0,1,2,3,4,5,.....9999
- Name - Material name (if Multisub material with submaterial naming structure - see below)
- Type - Type of material
- ME - position in Material Editor


Right click menu:
- Turn On/Off  VRay Override material effect (VrayMtl / CoronaMtl)
- Mutli/Sub Display -> 3 different ways to display Multi/Sub Materials structure
                                                1. MultiSub name -> ID# -> SubMaterial name
                                                2. < ID# > SubMaterial name -> MultiSub name
                                                3.  SubMaterial name <- ID# <- MultiSub name
- Show in Material Editor -> It activates slot in Material Editor (material has to be in Material Editor and works only with single selection)
- Select Objects by selected materials (not available in demo version)
- Refresh all
- About


How to Use:
- It's a script only so simply drag and drop to 3ds max.
- To change ID -> Select materials -> choose "change" mode -> Left click on ID button to apply new ID
- To select materials with specific ID -> Right click on ID button
- Add to selection -> Hold Ctrl and Right click on ID button
- To reset all to ID 0 -> select all -> Left click 0 button
- If Material Editor is open and you can check "Autoupdate Material Editor" every change, but it can slow down the process

Demo / test version does not support Multi/Sub Materials

My questions:
I just wonder what you think:  how deep script should look for VRayMtl to change VRay Effect ID (submaterial -> ovrerride -> Blend -> 2side mtl etc)
How often do you guys use "VRay Effect ID" inside BlendMaterial, VRayBelendMtl, VRay2SidedMtl etc.
Or is it enough if script can control it only inside "MultiSub Material" ?

Let me know what you think

Full version:

Lite version:





Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
pixamoon's picture


haha, thanks, great ideas,

-I'll try to add scroll - good idea. Need to enlarge buttons for 3 digits too (that's why I thought about +100 button so buttons are still 0,1,2 but with +100 they mean 100,101,102 etc)

-SME - to get active (double clicked) mat from SME its easy, but I was thinking to add option to get multiple selected from SME - similar way to my post here:
than you need unique names...

-for objects IDs - I think it should be another script with list of objects to sort (by id, name) and apply IDs. I just wonder if this will be fast with large scenes (because new Select by name list can get very slow)
I'll see if its easy to add Object Ids here or to do another script.

Thanks again

Stetz.Anton's picture


i see it like this (picture in attach)

In settings we can chose how much ID's buttons we need
MatID Ch by default have 15 active buttons, and if we install plugin - activate others.
About SME - i think we can operate with this function sme.GetMtlInParamEditor()
Node must be not only select, but active in parametr editor too (double click on node).

4d46ac37e2.jpg 186.5 KB
pixamoon's picture


hmm, oki, I can add spinner but also switch +100, so all buttons will work as 100, 101, 102... ans so on. What you think ?

Vray override ID & matID don't work correct together -- I can add an option so when you apply one of those other will be reset to 0. Is that what you mean ?

I'll try to add support for Slate ME (but is bit more difficult to get selected materials from there - it will work only if you have unique material names)
But definitely will be added in next versions.

Thanks again for great suggestions !

Stetz.Anton's picture

I usually use about 30

I usually use about 30 matID's, but sometimes use ID above 100 (like 101, 102,103 for best organize scene masks, if scene has xRef scene link). Vray override ID & matID don't work correct together. Therefore, you can separate them by using radiobutton or something like this. Button is more clear, than spinner. You can look some features & ideas from script EffectChannelSet by Alex Kramer and add to your product. Would be cool if your script works with Compact & Slate ME )

pixamoon's picture

re: spinner

hmm, yes I can add spinner but I thought buttons are faster and easier than spinner
Buttons work as select and apply ID. Why do you need spinner ?

Support for more than 15 MatIDs - yes I'll add this in next version.
It will require to download EffectsChannelEx plugin from

How many MatID do you use, what should be the maximum button no ?

Stetz.Anton's picture

Need spinner & extra functions

Hi Pixamoon!
Thanks for your work!
Can you add spinners to MatID Ch & to VrayEffectID?
With free plugin EffectsChannelEx from lastjedioutpost_ru we have more than 15 matID. Maybe you can add functions for this ID's too?
And would be cool if you add some features for objID, like "add", "random add", "random but one ID for instances".

pixamoon's picture

thanks :)

thanks :) Script sent.

micky1111's picture

Great Script

Can i have the Full Version Please. :-) My Email: [email protected]


pixamoon's picture



Hi Titus,

Thanks for comment on turbosquid.
But I can't find your contact info to send you full version.

Please send me your e-mail here or to [email protected]. So I can send you current full version to test.


pixamoon's picture

coming soon

Hey guys,
Which functions from "coming soon" do you need first ?

I'm trying to find time for all scripts but I want to finish what is more important first, since many of you bought it already.

Let me know.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.