/materialx_utils

Utilities for material X for the substance ecosystem

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

MaterialX Export for Substance Painter

This plugin adds support for MaterialX export in Substance Painter, allowing exported materials to be loaded directly into applications such as Houdini, Maya, and Unreal Engine.

Prerequisites

  • Substance Painter 7.3 or newer
  • MaterialX Python 1.38 or newer (built for the version of Python in your Substance Painter application, and accessible in the Python path)

Installation

Create a SUBSTANCE_PAINTER_PLUGINS_PATH environment variable and assign it to the python folder of this project.

Enabling the Exporter Plugin

On the next launch of Substance Painter, you should see a materialx_plugin checkbox in the Python tab of the application:

Enable the MaterialX Exporter by checking this box, or disable the MaterialX Exporter by unchecking it, and your most recent choice should be maintained between sessions of Substance Painter.

Exporting MaterialX Files

When the MaterialX plug-in is enabled, you can export a MaterialX document through the standard File → Export Textures command in Painter, and the MaterialX document will be automatically added to its list of exports:

Selecting an Output Template

As with standard texture export, you can leverage any export template that is available in Substance Painter, but for MaterialX export we recommend the Substance 3D Stager template, which generates textures that are well-aligned with the Standard Surface shading model:

The MaterialX Exporter currently generates documents in the Standard Surface shading model, and it should be straightforward to extend it to additional shading models such as Adobe Standard Material in the future.