User Guide Cancel

Matching by Name | Substance 3D bakers

  1. Substance 3D home
  2. Home
  3. Getting Started
    1. What is Baking?
    2. Software interface
      1. Substance 3D Painter
      2. Substance 3D Designer
      3. Substance 3D Automation Toolkit
    3. Availability per software
    4. Compatible 3D software
    5. Tutorials
  4. Bakers settings
    1. Common Parameters
    2. Ambient Occlusion
    3. Ambient Occlusion from Mesh
    4. Bent Normals from Mesh
    5. Color Map from Mesh
    6. Convert UV to SVG
    7. Curvature
    8. Curvature from Mesh
    9. Curvature from Mesh (deprecated)
    10. Height Map from Mesh
    11. Normal Map from Mesh
    12. Opacity Mask from Mesh
    13. Position
    14. Position map from Mesh
    15. Thickness Map from Mesh
    16. Transferred Texture from Mesh
    17. World Space Direction
    18. World Space Normals
  5. Guides
    1. Error and Warning Messages
    2. Performances and optimizations
    3. Triangulating before baking
  6. Features
    1. Geometry Cache
    2. GPU Raytracing
    3. Matching by Name
    4. Tangent Space
  7. Common questions
    1. How to export the baked maps?
    2. Is dithering applied to baked textures?
    3. Should I enable "Compute tangent space per fragment"?
    4. What are Assbin files?
    5. What is the bit depth of baked textures?
    6. What is the difference between the OpenGL and DirectX normal format?
    7. Why are there strange stretches in my textures after baking or exporting?
    8. Why is Matching by Name not working with Ambient Occlusion/Thickness?
    9. Why is my mesh fully black after baking?
  8. Common issues
    1. Aliasing on UV Seams
    2. Baker output is fully black or empty
    3. Baking failed with Color Map from Mesh
    4. Black shading cross are visible on the mesh surface
    5. Mesh parts bleed between each other
    6. Normal map has strange colorful gradients
    7. Normal texture looks faceted
    8. Seams are visible after baking a normal texture
    9. Seam visible on every face
    10. Texture baked outside of Substance software looks incorrect

Matching by Name

Matching By Name is the name of a filtering method that can be used in Substance Bakers to isolate low poly and high poly meshes based on their name.

This functionality is very useful to avoid geometry bleeding over each other during the baking process to achieve clean textures. It avoid having to move away meshes (often referred as "exploding") to achieve the same result.

When to Use Matching By Name

Examples

Use case

Mesh

Matching By Name Off

Matching By Name On

Normal map baking with mesh bleeding.

In this example the helmet on top on the head of the character bleeds onto the character face.

By enabling Matching By Name we are able to ignore the helmet and bake the face properly.

This result is based on the main Match setting.

Ignore Backface for floating geometry.

In this example the "buttons" at the top of the box are floating geometry, they are not connected to the high poly mesh. Therefore they will cast shadows by default on the box underneath them which will show the geometry border.

By enabling Matching By Name for the Ignore Backface setting we are able to bake the ambient occlusion while ignoring the area under the buttons to make it look like one singular box.

This result is based on the use of the Ignore Backface setting.

How Matching By Name Works

The Matching By Name system works by reading the geometry name in both the low and high poly meshes and using a keyword (the suffix) to identify/match the names. By default the bakers use the specific suffix but they can changed (see below).

The current suffixes supported are:

Suffix TypeDefault ValueUsage
High Poly_highUsed to isolate the name of the high poly mesh to match against the low poly one.
Low Poly_lowUsed to isolate the name of the low poly mesh to match against the high poly one.
Ignore Backface_ignorebf

Used to ignore backfaces for bakers using secondary rays, such as the Ambient Occlusion.

This suffix should be present on the high poly meshes only, ex: mesh_high_ignorebf

Some rules to take into account to make this feature work properly:

  • Matching By Name has to be enabled in Common Parameters as it is off by default.
  • A secondary Matching By Name setting might be enabled in some bakers (such as Ambient Occlusion) because they produce secondary rays.
  • Matching is case sensitive, this means a mesh named "Vela" won't match with another one named "vela".
  • Multiple meshes can be matched together based on where the suffix is present in the geometry name.

Below are examples of how the matching may work (using the default suffix):

Low Poly NameWill Match With High PolyWill Not Match With High Poly
  • body_low
  • body_high
  • body_high_top
  • body_high_1
  • body_high_2
  • body-high
  • body_top_high
  • Head_low
  • Head_high
  • head_high
  • Leg_low_top
  • Leg_high
  • Leg_high_top
  • Leg_high_high_top
  • Leg_top_high

How to setup the bakers

Enabling Matching By Name

Matching By Name can be enabled in the Common Parameters of the Baker settings:

Software

Setting Configuration

Substance Painter

  1. Open the Baking Window (via the Texture Set Settings).

  2. Display the Common Parameters.

  3. Change the setting Match from "Always" to "By Mesh Name".

Substance Designer

  1. Open the Baking Window (by right-clicking on a linked mesh in the Explorer Window).

  2. Change the setting Match from "Always" to "By Mesh Name".

Changing the Suffix Names

The default suffixes are _low and _high and can be changed the following way:

High-poly meshes from zBrush

High-poly meshes exported from zBrush can be used for baking with the Matching By Name feature, however some settings might be followed:

File format

Description

FBX

No specific parameters to enable/disable, mesh files can be used as-is.

OBJ

OBJ files exported by zBrush won't work with Matching By Name by default. Instead, it is possible to tell Substance Painter to use the mesh filename instead to match meshes by name.

To do so, make sure to:

  1. Disable the group (Grp) parameter for each subtool.
  2. Name the OBJ file appropriately (ex: body_high.obj).

Get help faster and easier

New user?