.. | ||
bxdf | ||
cmlib | ||
lights | ||
mdl/materialx | ||
pbrlib | ||
stdlib | ||
targets | ||
README.md |
MaterialX Data Libraries
This folder contains the standard data libraries for MaterialX, providing declarations and graph definitions for the MaterialX nodes, and source code for all supported shader generators.
Standard Pattern Library
- stdlib
- stdlib_defs.mtlx : Nodedef declarations.
- stdlib_ng.mtlx : Nodegraph definitions.
- genglsl: GLSL language support.
- lib : Shader utility files.
- stdlib_genglsl_impl.mtlx : Mapping from declarations to implementations.
- genosl: OSL language support.
- lib : Shader utility files.
- stdlib_genosl_impl.mtlx : Mapping from declarations to implementations.
- genmdl: MDL language support.
- stdlib_genmdl_impl.mtlx : Mapping from declarations to implementations.
- Additional MaterialX support libraries for MDL are located in the source/MaterialXGenMdl/mdl/materialx package folder
- genmsl: MSL language support.
- lib : Shader utility files.
- stdlib_genmsl_impl.mtlx : Mapping from declarations to implementations.
Physically Based Shading Library
- pbrlib
- pbrlib_defs.mtlx : Nodedef declarations.
- pbrlib_ng.mtlx : Nodegraph definitions.
- genglsl : GLSL language support
- lib : Shader utility files.
- pbrlib_genglsl_impl.mtlx : Mapping from declarations to implementations.
- genosl : OSL language support
- lib : Shader utility files.
- pbrlib_genosl_impl.mtlx : Mapping from declarations to implementations.
- genmdl : MDL language support
- pbrlib_genmdl_impl.mtlx : Mapping from declarations to implementations.
- genmsl : MSL language support
- pbrlib_genmsl_impl.mtlx : Mapping from declarations to implementations.
BxDF Graph Library
- bxdf
- standard_surface.mtlx : Graph definition of the Autodesk Standard Surface shading model.
- gltf_pbr.mtlx : Graph definition of the glTF PBR shading model.
- usd_preview_surface.mtlx : Graph definition of the UsdPreviewSurface shading model.
- lama : Graph definitions of the MaterialX Lama node set.
Color Management Library
- MaterialX shader generation natively supports a small set of common spaces for input colors, with all color transforms implemented as language-independent MaterialX graphs.The canonical definitions of these color transforms may be found in the OpenColorIO configuration for ACES 1.2.
- lin_rec709
- g18_rec709
- g22_rec709
- rec709_display
- acescg (lin_ap1)
- g22_ap1
- srgb_texture
- lin_adobergb
- adobergb
- srgb_displayp3
- lin_displayp3
- cmlib
- cmlib_defs.mtlx : Nodedef declarations.
- cmlib_ng.mtlx : Nodegraph definitions.
Target Definitions
- Each target implementation requires a target definition for declaration / implementation correspondence to work.
- The targets folder contains definition files for the following core targets:
- GLSL :
genglsl
- OSL :
genosl
- MDL :
genmdl
- MSL :
genmsl
- GLSL :
- Any additional target files should be added under this folder and loaded in as required.
Target Support
- GLSL target support is for version 4.0 or higher.
- OSL target support is for version 1.9.10 or higher.
- MDL target support is for version 1.7.
- Basic GLSL and MSL
lightshader
node definitions and implementations are provided for the following light types:- point, directional, spot
- Shader generation does not currently support:
ambientocclusion
node.arrayappend
node.curveadjust
node.displacementshader
andvolumeshader
nodes for hardware shading targets (GLSL, MSL).