PBR Bridge

Links

 Gumroad: go to the store page

 Blender Market: go to the store page

 Discord: Support channel.

Summary

Description

Compatibility

Quickstart

Detailed Workflow

Description

PBR Bridge is a Blender addon which drastically simplifies the workflow between Blender and industry standard paradigm softwares: Quixel Mixer, Substance Painter & ArmorPaint.

The challenge was to keep a non destructive workflow between the softwares so you won't have to apply any unnecessary modifiers, and then can go back and forth to retouch your modeling, UVs, UDIMs, etc.

It was also fundamental to be able to easily iterate without wasting time on doing any repetitive tasks manually, like baking the material ID maps, joining meshes, exporting / importing the FBXs, setting up the PBR materials, editing the Image Shader Nodes, etc...

So behold! The whole process is fully automated for you by this addon and, at the end of the day, it basically sums up to two operations:

Compatibility

This addon is compatible with (tested versions):

This addon is not compatible with (tested versions):

Quickstart

This quick start guide will help you to get up and running with the addon.

Setting Paths 

The addon will tell you if anything is not set correctly.

Quixel Mixer
Application

Set the correct path pointing to “Quixel Mixer.exe

Projects

Provide your Mixer Files Path containing your Mixer’s projects when working with Mixer.

Substance Painter
Substance Version
Substance Steam Edition

Enable this to support Substance coming from Steam.

Application

Path to “Adobe Substance 3D Painter.exe

Substance Steam Version

When using Substance from Steam, you have to specify which version between 2019-2020-2021 should be launched.

Steam Application

When using Substance from Steam, if “Steam.exe” is not automatically found, you will have to provide its path manually.

ArmorPaint
Application

Path to “Krom.exe” if you haven’t renamed it.

Miscellaneous 

When clicking on “Edit with [Software]”, the addon will create a new folder structure next to the BlendFile.

Depending on the software chosen, the addon will use them to export or save the required files:

Workflow basics

This addon is here to simplify the iterative workflow between Blender and Quixel Mixer / Substance Painter / ArmorPaint.

Since this is a non destructive workflow, you won't have to apply any modifiers, which becomes very handy when working with multiresolution modifiers.

Its purpose is to save time and reduce any errors that could happen from a manual process.

To be working, the scene from Blender has to be saved, since its filepath will be required for various operations.

Here are the main steps of the workflow:

Detailed workflow

From Blender

After selecting a mesh, the UI will change as follow:

You will need to input a Mix name.

Clicking on “Edit with [Software]” will:

Note that the material IDs colors will be auto generated so you don’t need to set them manually. Due to some color detection threshold, you will be able to configure up to 60 different material IDs.

Working with separated Meshes

It is not necessary to join every mesh that you want to be part of the same Mix.

You can leave them as separated object meshes, just give them the same Mix name.

You can easily assign the same Mix name to several objects at the same time.

For that, select all the objects that you want to be part of the same Mix, then a new button will appear proposing you to “join (the) selection to group: [Mix name]”.

In case your selection contains multiple objects with different Mix names, you can choose under which Mix name you want to regroup by making “active” (last selected) the object which contains the Mix name you’re aiming for..

If all of the selected objects have the same Mix name, you can edit it at once. That will rename all the Mix names for each selected object.

Multiple UVMaps

If a mesh part of a Mix doesn’t possess any UVMap, you’ll receive an error message saying which mesh is missing the UVs.

You can have multiple UVMaps on the same mesh, the one which will be joined and exported is the one for which “Active Render” is True.

In the example below, “UDIM packed” will be the one exported (it doesn’t have to be the “Active” one, which in that example is “TempUV”).

When working with multimeshes, just be sure you don’t have any overlapping UVs between the different meshes (or make sure that is actually what you want).

You can easily check this by selecting all the meshes, then switch to edit mode, select all the faces and look at their UVs as usual.

To Mixer

Clicking on “Edit with Mixer” will:

Exported material ID maps & FBX can be found at
[MixerProjects] \ [BlendFilename] \ [MixName] \ Custom Sources

Within Mixer

Unfortunately, there is currently NO command line or API for Quixel Mixer application, so there is no way to directly open a Project / Mix.

So, one has to select it manually and then click open.

The addon will have created an easy project to find since its name will be the same as the working Blender file.

The new Mix to open will have a Blender icon and your Mix name previously entered. That icon will be updated to a regular preview once the Mix is saved from Mixer.

By default, the addon will create a Mix with this settings:

Apart from the export location, changing these settings is up to the user and won’t interfere in any way during the next steps.

Work as usual with your Mix and export the maps via “Export to Disk” or “Quick Export” and close the Mixer application.

Working with UDIM

To work with UDIM, you only have to offset the UVs to a desired UDIM Tile.

Once you’re happy with your new UVs, click on “Edit with Mixer” as usual.

With your Mix open, you will have to manually edit the Textures Sets in Mixer.

After selecting the “Texture Sets From UDIMs” option, Mixer will find your different UDIM tiles.

You will have to manually assign the “Material ID” maps.

Easiest way being to select all the Texture Sets, then click on “Import all maps”, and choose the folder containing all the “material ID” maps, which you can find in your Mixer project subdirectory, namely:

“[QuixelMixer ProjectDir] \ [BlendFilename] \ [MixName] \ Custom Sources”

To Substance Painter

Clicking on “Edit with Substance” will:

Exported material ID maps & FBX can be found in the generated folders next to the blend file at “[BlendFilename] \ [MixName]

UI when selected version is from 2019.3.3.

UI when selected version is 2020.2.0 (6.2.0).

Within Substance Painter
When using UDIM Legacy workflow

The addon will import / update your material ID maps but oddly, you will have to set / reassign them to the TextureSets manually even when the maps are correctly updated in the project.

  

When using UVTile workflow

Unfortunately, at the time of writing, there is no way either from command line nor via coding a plugin, to re-import the mesh without losing the UVTile setting.

So one has to re-import it manually when necessary.

The re-importing can be easily done via “Edit > Project Configuration... > Select...”.

Texture export

To export your textures, since the Output template has already been imported and set, and that the output directory is already set to the right folder, you just need to click on “Export”.

To ArmorPaint

Clicking on “Edit with ArmorPaint” will:

Exported material ID maps & OBJ can be found in the generated folders next to the blend file at “[BlendFilename] \ [MixName]

Within ArmorPaint

Important!

The first time you’re opening a new mix with ArmorPaint, you will have to save that project manually. To make it work correctly with the addon you have to:

For example, if:

Then you shall save your file at:

Important! Bis

Since the mesh is actually saved into the arm file, make sure you hit reimport (Ctrl+R) each time you’re opening your project.

By default, the OBJ Mesh is split by object, if you want to work with UDIM, simply re import the mesh (Ctrl+R) and choose to split by UDIMs

To export your textures, simply choose the “WR PBR Bridge Blender” output template. The output directory is already set to the right folder.

If you’re working with UDIM, select “Per Udim Tile” in the Layers dropdown.

Then choose the right export location which has to be:

And back again!

Sync Maps & Create Shaders

The “Sync Maps & Create Shaders” functionality will:

You don’t actually have to export all the maps and can choose which ones are relevant to your situation. The addon will mute the Shader Nodes for which the maps are missing.

You can even click on “Sync Maps & Create Shaders” just to create the material and don’t need any maps to be exported at all.

Tweak Material & Displacement properties

The addon will look for particular nodes inside the Shader to detect if it is compatible and if so will show that new UI:

This UI exists so you won’t have to dig into the Shader Node view to change any value like:

You can also directly preview any of them by clicking on the eye icon.

Additionally, the UI adds the possibility to directly tweak the mesh modifiers:

Working with UDIM

When using UDIMs, the addon will import the image as UDIM Tiles, you won’t have to set anything manually.

Also, the Image Shader Nodes will be set to use UDIM as well.

Which will also be the case for the Displacement modifier.

Iteration

Since this is a non destructive workflow, and you won't have to apply any modifiers, you can easily iterate the whole process as many time as desired, which basically sums up to two operations: