glTF PBR Materials / 3ds Max

If your content needs to be fully-compatible with glTF 2.0 standard for some reason, you'll need to use the simplistic material setup. This setup is based on a limited set of 3ds Max nodes which should be connected with each other as specified below.

Example of glTF-compatible materials
Example of a scene made with glTF-compatible materials.

For usage example, check out the GLTF Compat demo (also available in the Asset Store).

Contents

Setting Up

Add a Physical Material shader node as follows: go to Materials/Map Browser and choose Physical Material from the General material list.

Adding Physical material in 3ds Max

Then you can connect texture nodes to the Physical Material as described below. Note that all textures are optional and any of them can be safely omitted.

Physial material setup Setting parameters of bump map in 3ds Max

Transparency Texture

The engine will use the Alpha channel from the Base Color texture as a transparency map automatically, if it is present. To make the transparency visible in the 3ds Max viewport, connect the Alpha channel of the Base Color texture to the Transparency Color Map input.

glTF material with transparency

Also in the Preferences of the texture, in the Bitmap Parameters panel you should set Mono Chanel Output to Alpha and RGB Channel Output to Alpha as Gray.

Transparent texture map settings in 3ds Max

Color Space and Gamma Correction

For correct rendering, the color space should be taken into account for images. All images, except the Base Color and Emission textures, must be presented in the linear color space. To do this, select Override Gamma with the 1.0 value in the Gamma Preferences when you open an image in the Open Image dialog box (as can be seen below).

Overriding image gamma in 3ds Max

On the contrary, the Base Color and Emission textures must be opened in sRGB color space (with Gamma 2.2). To make it happen, just leave Automatic in the gamma preferences of the Open Image dialog box.

Choosing automatic gamma in 3ds Max

Exporting Textures from Substance Painter

The models and the baked normal and occlusion maps (if any) can be loaded in Substance Painter via OBJ format.

Substance painter screen

Overall 3 maps are produced in this software in the end: base color/transparency, occlusion/roughness/metallic and normal.

Occulsion roughness metallness texture atlas

To facilitate exporting textures from Substance Painter and to ensure maximum capabilities within the Verge3D engine we recommend using Verge3D export preset. Place this preset file to the export-presets folder usually located in the My Documents\Allegorithmic\Substance Painter\shelf\ directory (create it if does not exist).

Exporting material from Substance painter

When exporting textures from Substance Painter, choose Verge3d for 3ds Max in the export dialog window so that all generated textures are compatible with the glTF 2.0 standard Verge3D is based on.

Alternative Setup based on glTF Material

Verge3D exporter plugin also supports 3ds Max' glTF Material materials by converting them directly into glTF 2.0-compatible PBR model.

This material can only be used with 3ds Max 2023 and later.

Add a glTF Material shader node as follows: go to Materials/Map Browser and choose glTF Material from the General material list.

Adding glTF material in 3ds Max

Then you can connect texture nodes, note that all textures are optional and any of them can be safely omitted. For example:

glTF material shader
  1. Assign glTF Material to your model.
  2. Connect a Base Color texture to the Base Color Map input.
  3. Connect a Transparency texture to the Alpha Map input, otherwise the alpha channel will be taken from Base Color Map.
  4. Connect a Metallic texture to the Metalness Map input.
  5. Connect a Roughness texture to the Roughness Map input.
  6. Connect an Normal texture to the Normal Map input.
  7. Connect an Occlusion texture to the Occlusion (AO) Map input.

All inputs are supported in Verge3D. So you can use extensions too, by enabling corresponding checkers:

3ds Max glTF material settings
  1. Unlit Material - makes shading independent of lighting, constantly shaded surface.
  2. Clearcoat - adds a reflective extra layer on top of any another layer that may be irregular or rough.
  3. Sheen Color - adds a sheen layer (an independent roughness layer).
  4. Specular - configures specular reflection in the dielectric.
  5. Transmission - adds advanced transparency rendering, takes into account light reflections. Material's Alpha Mode should be Blend.
  6. Volume - used to describe the transmission of light through the object's surface.
  7. IOR - the index of refraction.

Alternative Setup based on Usd Preview Surface Material

You can use these materials to make your 3ds Max scenes compatible with both glTF and USD formats. You might need to install "USD for 3ds Max" plugin, which is available from "Product Updates" in your Autodesk account.

Assign the Usd Preview Surface material node. Then you can connect texture nodes, note that all textures are optional and any of them can be safely omitted. The following settings are supported in Verge3D:

Using Usd Preview Surface material in 3ds Max

Creating USD material

Follow these steps to configure standard PBR shader which has 3 maps: Base Color, ORM (Occlusion, Roughness, Metalness) and Normal Map:

  1. Assign Usd Preview Surface to your model.
  2. Connect a Diffuse Color texture to the Diffuse Color Map input.
  3. Connect a Metallic texture to the Metallic Map input.
  4. Connect a Roughness texture to the Roughness Map input.
  5. Connect an Occlusion texture to the Occlusion Map input.
  6. Connect an Normal texture to the Normal Map input.

Exporting to glTF in Runtime

With export to gltf puzzle you can export your models or the entire scene in realtime. Then you can download the exported model or upload to the server for permanent storage. See more in the puzzle's reference.

Got Questions?

Feel free to ask on the forums!