Need help with MaterialX?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

materialx
688 Stars 139 Forks Other 663 Commits 8 Opened issues

Description

MaterialX is an open standard for transfer of rich material and look-development content between applications and renderers.

Services available

!
?

Need anything else?

Contributors list

MaterialX

License Version 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.
  • Select the
    MATERIALX_BUILD_VIEWER
    option to build the MaterialX viewer.

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 support Python versions 2.7 and 3.x.

Repository

The MaterialX repository consists of the following folders:

  • documents - MaterialX documentation, including the specification and developer guide.
  • libraries - The standard data libraries for MaterialX, including definitions for the pattern and shading nodes.
  • python - Support modules and example scripts for MaterialX Python.
  • resources - Resources for rendering MaterialX content, including example materials, images, and geometry.
  • source - Cross-platform C++ libraries for MaterialX with Python bindings.

MaterialX Viewer

The MaterialX Viewer leverages shader generation to build GLSL shaders from MaterialX graphs, rendering the results using the NanoGUI framework.

Figure 1: Procedural and uniform materials in the MaterialX viewer

Figure 2: Textured, color-space-managed materials in the MaterialX viewer

Figure 3: Droid character materials in the MaterialX viewer. © & TM Lucasfilm Ltd. Used with permission.

Pre-Built Binaries

The following packages contain pre-built binaries for the latest release, including the MaterialX viewer, Python libraries, and example assets:

Additional Resources

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.