-
Notifications
You must be signed in to change notification settings - Fork 407
Description
The MaterialX specification allows for nodes that can be scoped in a namespace. MaterialX namespaces are most commonly used to define families of custom nodes (nodedefs), material libraries, or commonly-used network shaders or nodegraphs. The usage of the namespace node is in the form namespace:nodename
The rationale behind namespace was to allow DCCs to publish overridden nodes that have same names as stdlib nodes and include them in the data library so that DCC published nodes and stdlib nodes could coexist side by side to allow for interop of materials between DCCs.
Based on an informal survey, Autodesk is the only user of the namespaced nodes. It has be found that many implementations of MaterialX don't fully support MaterialX namespace. One of the main issues being the reason to process node names with : token. MateiralX namespace might become more easier to adopt if the namespace was just a prefix with _ token.
I'm not sure how USD handles MaterialX namespaced nodes when written to Sdr Shader Node so replacing the token might be easier.