Felipe Vimeney - a Brazilian artist born and raised in Rio de Janeiro - has taken the time to share his tips for optimising your Substance Painter project to truly make sure it's not only fast, but perfectly setup.

Preparing the mesh

  • It’s highly recommended that you have a low-poly and a high-poly version of your mesh, so you’ll have less or none issues during the baking process;
  • Usually is a good idea creating a separate file for each low-poly and high-poly version to apply the naming convention for a proper baking operation;
  • An easy way to name the meshes inside Maya is using the Modify > Search and Replace Names;
  • On the field Search for type $ so it will look into all meshes in your scene;
  • On the field Replace With type _low on the low-poly file and _high on the high-poly file and apply the naming convention.

Exporting the mesh

When exporting meshes from Maya, I usually prefer to use FBX format to work with Substance, as I had less problems in comparison with OBJ and ABC.

  • On the export window in the Geometry tab check the following checkboxes:
  • Smoothing Groups
  • Tangents and Binormals
  • Smooth Mesh
  • Selection Sets

I usually disable all other tabs like animations, camera, lights, …. In the end of the list make sure to select FBX 2014/2015 version.

This is the recommended version as it holds well the smoothing group information on the exported FBX file. It is also a recommendation when using FBX files with Mari to properly load the selection sets.

Baking the maps

Step 1:

  • Start a new project with default PBR – Metallic Roughness (allegorithmic);
  • Select the mesh file (OBJ, ABC or FBX);
  • Check Create a texture set per UDIM tile if you're working with UDIMs;
  • Select the desired Document Resolution to help you export the baked maps on the correct resolution;
  • Disable Compute tangent space per fragment as we exported the FBX with the tangents and binormals included on the file.

Step 2:

  • Go to the Texture Set Settings and find the Bake Mesh Maps button;
  • On the Baking Window make sure to choose the desired Output Size, usually the same resolution size chosen in the New Project Window;
  • If you’re not using ID materials, you can disable ID on the left side list;
  • On the High Definition Meshes click on the document icon to navigate to your's high-poly mesh path and select it for the baking process;
  • Scroll down until the Match field and select By Mesh Name. It will use the naming convention _low and _high to match each piece and bake the maps isolating meshes avoiding problematic collisions from topped parts.

Click on Bake all textures sets and go grab a coffee :)

Step 3:

  • It’s now time to export the baked maps. Go to File > Export Textures
  • On the Export Window make sure to:
  • Select the path where Substance must save the baked maps;
  • Select the .PNG 16bit format;
  • On Config field select the Mesh Maps template;
  • Finally check the document size for all UDIMs.

To save even further space you can save certain maps at 8bit.

  • Normal = 16bits
  • World Space Normals = 16bits
  • ID = 8bits (if you don't have too much different colors)
  • Curvature = 16bits
  • Ambient Occlusion = 8bits
  • Position = 16bits
  • Thickness = 8bits

The Mesh Maps template exports all baked maps with the proper naming convention and it’ll be fundamental for the next and last step.

Step 4:

  • Go to File > New to start a new project;
  • On the New project window now you need to check the following:
  • On File select the low-poly version;
  • Check Create a texture set per UDIM tile if working with UDIMs;
  • Select the proper Document Resolution for your project;
  • Disable Compute tangent space per fragment;
  • On the Import mesh normal maps and baked maps for all materials click on Add button, navigate to your baked maps folder and select them all.

You’ll now have a Substance Project file, grabbing all baked maps from disk and auto-assigned to your shaders and with no cache embedded in the project file making it much lighter.

Note: During basic tests using this work-around I could get a project file size 70% lighter in comparison with the project using the baked maps embed.

There is also some really good documentation on the Substance site for optimising projects - 'Projects are really big'.

Thank you all for reaching the end of the article and I hope that it helps you on having a better workflow and that you have learned something new.

You've successfully subscribed to Discover
Welcome back! You've successfully signed in.
Great! You've successfully signed up.
Success! Your account is fully activated, you now have access to all content.