Publishing SBSAR Files

This page explains how Substance 3D Designer can publish packages as Substance Archives, a special file format, extension "SBSAR", used within the Substance ecosystem, as well as in other applications supporting it. It's usually better to use a Substance Archive instead of bitmaps, as it is a lot more flexible and lightweight. If you are using them in Substance 3D Painter, Sampler or Player, it's faster to use the Send To functionality.

Publishing Concepts

It's good to keep the following in mind when publishing a Substance Graph:

  • You publish a Package, with all it contents, not an individual Graph. A Substance Archive then lets you generate content from all Substance Graphs inside this package.
  • Published packages are completely stand-alone: all resources required are embedded into the file. That means they are much easier to share than SBS files.
  • The output from Substance Archives can be completely dynamic. Resolution is not set; exposed parameters can be modified. However, editing the Graph is no longer possible.
  • Substance Archives can be used outside of Designer, in all Adobe Substance 3D products, Adobe Dimension as well as any other application that has a Substance integration.
  • Publishing is different from Exporting, make sure you understand well the difference.

Preparing to Publish

Publishing takes some more preparation than Exporting Bitmaps. That's because your published SBSAR packages are dynamic tools, not just a static snapshot of the current state of your textures. Specifically, you want to keep the following in mind:

Publishing Methods

Once you are ready to publish, there are two ways to access the Publishing Dialog, both are through the Explorer Window.

In the Explorer window, Right-clicking on the Package and choosing  Publish .sbsar File..., alternative Hotkey Ctrl + P.

After Publishing with dialog once, you can also use  Publish .sbsar file as previous to repeat the publishing process without seeing the dialogs, immediately publishing with the same settings.

In the Explorer window, by clicking the Publish button  in the top toolbar. 

After Publishing with dialog once, you can also use the Publish as previous button  to repeat the publishing process without seeing the dialogs, immediately publishing with the same settings.

Asset Publish options

Before the Asset Publish Options appear, you will be prompted to save the SBS file if this has not been done, and you will be prompted where to save the SBSAR file. To avoid seeing the file prompts and dialog and getting your file out faster, use Publish as previous methods described above.

The following options are available:

  • File Path opens a file dialog to choose where to save the SBSAR file.
  • Archive compression sets compression options for the archive, affects filesize.
  • Generate missing icons uses built-in PBR render techniques to create thumbnails for each graph's attribute.
  • Exposed Graphs lists all graphs that will be exposed in this package, see below for excluding graphs.

Random Seed Exposure

The Random Seed exposure settings are no longer available in the Publish dialog. Instead, set your Graph's random seed attribute to Absolute instead of relative to avoid it becoming available.

Excluding Graphs from SBSAR

Some Graphs in your package might not be intended for usage outside. These sub-graphs are usually meant as part of a larger whole, a subroutine of a master material. 

To exclude a Graph from becoming visible or usable inside an SBSAR, access that Graph's properties (double click empty area in Graph View or single-click the graph in the Explorer), then open the Attributes rollout. Set Exposed in SBSAR to No to hide it when published. 

Publish Dialog Warnings

The Publish dialog sometimes gives warnings in yellow. Common ones are listed below, with an explanation and solution.

  • One or more graphs don't have an output
    This warning means you are trying to publish a package with one or more graphs that have no output nodes. Solution is to add Output nodes to the Graphs with a yellow warning triangle.
  • One or more graphs have a non-relative to parent output size parameter
    This warning means one or more Graphs have been set to incorrect Output sizes. Usually it's the properties of a graph itself. The warning means you will not have dynamic resolution control over this graph when published. Solution is to go into graph properties for those with a yellow triangle, and set Output Size to "Relative to Parent".

SBSAR Limitations

While SBSAR is the most powerful and most dynamic format in the Substance Ecosystem, there are some small, technical limitations to be aware of.

  • Published SBSAR packages are a one-way file format. You cannot "decompile" an SBSAR back to SBS. The only way to "edit" an SBSAR, is to edit the original SBS file. You can still use SBSAR package contents as nodes inside new Substance Graphs (open and drag-and-drop), so this is not a huge limitation.
  • SBSAR files have versions that infer compatibility. The core Substance Engine is updated from time to time with new features. Packages that use these features need to be read by applications that support these new features. This is not an issue for all Substance Applications, as they are all updated at the same time, but Plugins and integrations might have longer compatibility delays.
    Use the Substance Engine Compatibility display options in the Project Preferences to track down any potential issues.
  • Some exposed parameters do not function anymore once published as SBSAR. See Exposing a Parameter for a comprehensive list.