Substance Painter to V-Ray - PBR Workflow

 

Substance Painter PBR Map V-Ray Material slot
Diffuse / Base Color Diffuse
Normal Bump (as a normal map)
Height Bump, Displacement
Specular Reflection
Glossiness Reflection Glossiness
Metallic Metalness
Roughness Reflection Roughness
Ambient Occlusion Diffuse (multiplied by a diffuse map)
Opacity Opacity, Refraction
Emission Self-Illumination, Light Material

 

This article covers the following topics:

1: Setting up and understanding the Substance texture exporter.

  • Existing V-Ray Presets
  • Substance Painter export system

2: Substance PBR to V-Ray Material setup

3: Color Spaces and mapping

 

 

Setting up and understanding the Substance texture exporter

Substance_Painter_2021-10-22_15-54-30.png

 

Existing V-Ray export presets in Substance

There are currently three existing V-Ray presets available in Substance Painter that have been created by Allegorithmic:

  • Vray Next Metallic/Roughness
  • Vray Next Specular/Glossiness
  • Vray Next UDIM Legacy (Metallic Roughness)

The V-Ray presets export the following maps:

  • Diffuse / Base Color
  • Roughness / Specular
  • Metallic / Glossiness
  • Emission
  • Transmissive
  • Anisotropy Angle
  • Anisotropy Level

These Adobe presets can be used for most common materials. However, if you want to better support your workflow and get texture exports that better fit your needs, we recommend creating your own presets.

 

Substance Painter export system

For this step, refer to the Adobe Documentation where the exporter is explained in detail.

 

Substance PBR to V-Ray Material setup

For this article, we prepared a retro night light that is textured with all the maps mentioned. Here is what the textures and the model look like in Substance Designer.

mceclip0.png

 

Diffuse / Base Color map

The Diffuse / Base Color map stores the color information for your material. This texture is loaded into the Diffuse map slot of the V-Ray material.

 

Render with Diffuse texture only:

diffuse.png

 

Normal / Height map

Height maps can be directly loaded into the Bump slot of the V-Ray material. Height maps can also be used as displacement (see next paragraph).
Depending on the AEC/DCC used, the Substance normal maps can be loaded directly into the Bump map slot of the V-Ray Material or into a VRayNormalMap texture which is plugged into the V-Ray material bump slot.

In order for the normal map to work correctly, you need to use the same normal map space in both Substance and V-Ray. In this example, the normal maps are exported in tangent space from Substance; therefore, in V-Ray, we need to specify that the Normal Map is in tangent space (visible in the picture below).

Substance Painter exports both DirectX (Y-) and OpenGL (Y+) normal maps. Please note that exporting DirectX and OpenGL normal maps using the Converted Maps in the Substance Painter exporter takes both the normal and height information, and combines them into a normal map. DirectX and OpenGL use different directions for the green channel (Y- / Y+).

V-Ray works with OpenGL (Y+) normal maps. If you are using DirectX (Y-) normal maps, you need to flip the green channel of the normal map to work correctly. You can do this by using the VRayNormalMap shader, particularly its flip channel options highlighted in the picture below:

 

mceclip0.png

VRayNormalMap 3DS Max documentation: https://docs.chaos.com/display/VMAX/VRayNormalMap
VRayNormalMap Cinema 4D documentation: https://docs.chaos.com/display/VC4D/VRayNormalMap
VRayNormalMap Maya documentation: https://docs.chaos.com/display/VMAYA/VRayNormalMap
VRayNormalMap Flip Houdini documentation: https://docs.chaos.com/display/VRAYHOUDINI/V-Ray+Normal+Map+Flip

Render with Diffuse and Normal:

diffuse_%2B_normals.png

 

Displacement

Additionally, Height maps can be used for Displacement mapping by means of the displacement options supported by V-Ray for the dedicated AEC/DCC platform.

blobid4.png

Read more about displacement for every V-Ray integration from the links below:
3ds Max, Maya, Cinema 4D, Houdini, SketchUp, Rhino, Revit


Displacement Render:
blobid1.png

Specular/Glossiness or Metallic/Roughness maps

There are two ways to set up the reflections of the material in V-Ray.

1:Using Specular/Glossiness:

To use the Specular/Glossiness PBR workflow, make sure the Use Roughness option in the V-Ray Material is disabled. Load the Specular map in the Reflection map slot and the Glossiness - in the Reflection Glossiness Map slot of the V-Ray Material.

2:Using Metallic/Roughness:

To use the Metallic Roughness PBR workflow, enable the Use Roughness option (normally located under the Reflection options / BRDF options of the V-Ray Material). The exported Roughness map from Substance should be loaded into the Roughness Map slot of the V-Ray Material. The Substance Metallic map should be loaded into the Metalness map slot of the V-Ray Material. The Reflection color should be set to white to get the proper reflectivity and preservation of energy. Otherwise, the glancing angle will never be 100% reflective, which it should be.

 

Render with Diffuse, Normal, Metallic and Roughness:

Diffuse_%2B_Normals_%2B_Metallic_%2B_Roughness.png

 

For more information about working with metalness you can visit the following blog: https://www.chaos.com/blog/understanding-metalness

 

Opacity maps

The Substance Opacity map is loaded into the Opacity slot of the V-Ray material.

blobid5.jpg

Opacity Render (Diffuse + Opacity):
blobid6.png

 

Refraction maps

Substance Opacity maps can also be used inside the Refraction map slot of the V-Ray Material. Please note that Substance and V-Ray use opacity maps differently: in order to get a proper result, the opacity map needs to be inverted when used as a refraction.

Please note that since Substance Painter doesn’t represent physically based refraction in the viewport, the result from V-Ray looks different, but it is more accurate. Since you are making the material for V-Ray using Substance, it is more correct to look at the V-Ray render result rather than the Substance Painter viewport result. Because of that, you may need to iterate between Substance Painter and V-Ray by making changes on the map you use for the Refraction in order to get the desired effect.

Render with Diffuse, Normal, Metallic, Roughness, Refraction and Opacity:

Diffuse_%2B_Normals_%2B_Metallic_%2B_Roughness_%2B_Refraction_and_Opacity.png

 

Ambient Occlusion map

Since the V-Ray Material doesn’t have a map slot for Ambient Occlusion maps, use them with V-Ray by multiplying the Ambient Occlusion Map by the Diffuse map you are using. For this, use a compositing / layering shader/node that is loaded into the Diffuse Map slot of the V-Ray Material.

 

Render with Diffuse, Normal, Metallic, Roughness, Refraction, Opacity and Ambient Occlusion:

Diffuse_%2B_Normals_%2B_Metallic_%2B_Roughness_%2B_Refraction_%2B_Opacity_%2B_AO.png

 

Emission/Self-Illumination maps

Emission maps can be loaded into the Self-Illumination map slot of the V-Ray Material. By turning on the material’s affect GI option, the Emission map also has an effect on the Global Illumination in the scene and becomes a light source.

Emission maps can also be used with the V-Ray Light material. Thus, the Emission map turns into a light source and controls the intensity of the light.

 

Render with Diffuse, Normal, Metallic, Roughness, Refraction, Opacity, Ambient Occlusion and Emission as Self Illumination:

Diffuse_%2B_Normals_%2B_Metallic_%2B_Roughness_%2B_Refraction_%2B_Opacity_%2B_AO%2BEmission.png

 

Render with Diffuse, Normal, Metallic, Roughness, Refraction, Opacity, Ambient Occlusion and Emission as V-Ray Light Material:

Diffuse_%2B_Normals_%2B_Metallic_%2B_Roughness_%2B_Refraction_%2B_Opacity_%2B_AO%2BEmission_Light.png

 

Color Spaces and mapping

 

It is important to load the materials with the color space they have been exported in to achieve the expected result. By default, Substance Painter exports all maps in sRGB color space except for the Normal map, which is in the Linear color space.

 

Additional Information and Related Content

Was this article helpful?
0 out of 0 found this helpful