MaterialX C++ and Python libraries
Switch branches/tags
Clone or download


License Travis Build Status Appveyor Build Status

MaterialX is an open standard for transfer of rich material and look-development content between applications and renderers. Originated at Lucasfilm in 2012, MaterialX has been used by Industrial Light & Magic (ILM) in feature films such as Star Wars: The Force Awakens and real-time experiences such as Trials on Tatooine, and it remains the central material format for new ILM productions.

Quick Start for Developers

  • Download the latest version of the CMake build system.
  • Point CMake to the root of the MaterialX library and generate C++ projects for your platform and compiler.
  • Select the MATERIALX_BUILD_PYTHON option to build Python bindings.

Supported Platforms

The MaterialX codebase requires a compiler with support for C++11, and can be built with any of the following:

  • Microsoft Visual Studio 2015 or newer
  • GCC 4.8 or newer
  • Clang 3.3 or newer

The Python bindings for MaterialX are based on PyBind11, and currently support Python versions 2.6, 2.7, and 3.x.


The MaterialX repository consists of the following folders:

documents - The MaterialX specification, developer guide, and example files.
source    - A cross-platform C++ library for MaterialX with Python bindings.
            The MaterialXCore module supports the core MaterialX elements
            and graph traversal, while the MaterialXFormat module supports
            XML serialization.
python    - Support modules for MaterialX Python.

Additional Resources

  • The Developer Guide contains more detailed documentation and code examples in C++ and Python.