This page is set up to create a proposal for "promoting" metadata from MaterialX which has important semantic meaning within MaterialX
This list includes:
- Input value color space
- Input value unit
The baseline goal is to ensure that any such desired data is transported when conversion to USD and as required from USD back to MaterialX. The latter could for instance be for lossless data interop but also required at rendering
1. Color Management
MaterialX supports the ability to tag an color3 or color4 input value with a "colorspace". This is the color space of the input value which may be a uniform or an image. At render time the value should be converted to the rendering color space (defined by the renderer). The minimum colorspace tags currently proposed for support are those defined by ACESCg 1.2 with static implementations provided as part of the MaterialX distribution. A longer term proposal goal is to support OCIO as part of MaterialX. This would provide both specification of available valid colorspaces as well as the possibility to use OCIO code generation as part MaterialX code generation. This dependency is beyond the initial proposal to just transport "colorspace" metadata is a lossless manner.
2. Real World Units
MaterialX supports the ability to tag scale and vector values with a unit. This is the real world unit for the input value which may be a uniform or an image. An example of the latter could be a input displacement map. At render time he value should be converted to the "scene unit" for geometry. The minimum unit tags are for distance currently but these are dynamically specified as "unit types" and "unit" labels with MaterialX.
Options:
- Make this metadata official within USD.
- Don't make this metadata official but allow some sort of semantic tagging.
- other...