MetaSL Shaders

3ds Max provides a set of MetaSL shaders for creating shader trees to use with hardware shading. A MetaSL shader tree is a hierarchical arrangement of MetaSL shaders that combine to serve as the equivalent of a material. For example, you could use two shaders in a tree to provide simple shading and reflectivity properties.

You can find general information about MetaSL shaders in the mental mill User’s Guide. Information about specific shaders, including shaders not provided with 3ds Max, is in the mental mill Shader Library documentation.

NoteYou must use the Slate Material Editor to create and adjust MetaSL shader trees. The Compact Material Editor interface does not display the MetaSL material or maps.

Viewing MetaSL Shader Trees in Viewports

To view a MetaSL shader tree in viewports, you must use a Map To Material Conversion node. When Map To Material Conversion is the parent material for the shader tree, you can then apply it to objects as you do any other material, and see the shader tree result in 3ds Max viewports.

NoteMap To Material Conversion displays a MetaSL shader tree in 3ds Max viewports regardless of the active renderer, but to render MetaSL shaders, you must use the mental ray renderer or the Quicksilver hardware renderer. Because of this, the MetaSL material and maps are not visible in the Material/Map Browser panel while the Default Scanline renderer is active.

Saving and Using XMSL Files

While a Map To Material Conversion node is selected, you can save the MetaSL shader tree to an XMSL file. In the Slate Material Editor, choose Material Export As XMSL File.

To use an XMSL file as a texture in 3ds Max, add a DirectX Shader material to the scene, then choose the XMSL file as the shader to use. In the Slate Material Editor Parameter Editor panel, a rollout appears for each MetaSL shader in the shader tree. You can adjust the shader settings locally for the current scene, although the XMSL file remains unchanged.

Example of locally editable MetaSL shader rollouts for a DirectX material using an XMSL file