Material X Standard Surface Material->.mtlx file->Reference
1541 2 2-
- syntheticperson
- Member
- 170 posts
- Joined: July 2010
- Offline
Hello,
I'm trying to write a Python script for Maya 2025 to convert Arnold standard surface shaders (aiStandardSurface) to Material X standard surface.
https://materialx.org/ [materialx.org]
i.e. a Material X shader compatible with USD hydra render delegates such as SideFX Houdini Karma.
NOT the Arnold Renderer flavor of Material X.
I'm making some progress on the Maya side, however, I wanted to do a reality check on the Houdini side:
In Houdini Solaris, in a Material Library LOP, I created a MtlX Standard Surface VOP, linked to a MtlX Surface Material VOP.
As per this tutorial...
https://www.youtube.com/watch?v=RpShFmwjMzg [www.youtube.com]
... with the mouse over the MtlX Material VOP, I right mouse selected Save->MaterialX...
I then reference the .mtlx file back into the Solaris context using a Sublayer LOP.
I then use an Edit Material Network LOP to try to reconstruct the referenced .mtlx shader network.
However, the result is a generic shader inside a subnetwork.
I would expect it to reconstruct the network with MtlX Standard Surface VOP, linked to a MtlX Surface Material VOP.
What am I missing?
Thanks
I'm trying to write a Python script for Maya 2025 to convert Arnold standard surface shaders (aiStandardSurface) to Material X standard surface.
https://materialx.org/ [materialx.org]
i.e. a Material X shader compatible with USD hydra render delegates such as SideFX Houdini Karma.
NOT the Arnold Renderer flavor of Material X.
I'm making some progress on the Maya side, however, I wanted to do a reality check on the Houdini side:
In Houdini Solaris, in a Material Library LOP, I created a MtlX Standard Surface VOP, linked to a MtlX Surface Material VOP.
As per this tutorial...
https://www.youtube.com/watch?v=RpShFmwjMzg [www.youtube.com]
... with the mouse over the MtlX Material VOP, I right mouse selected Save->MaterialX...
I then reference the .mtlx file back into the Solaris context using a Sublayer LOP.
I then use an Edit Material Network LOP to try to reconstruct the referenced .mtlx shader network.
However, the result is a generic shader inside a subnetwork.
I would expect it to reconstruct the network with MtlX Standard Surface VOP, linked to a MtlX Surface Material VOP.
What am I missing?
Thanks
Edited by syntheticperson - Sept. 2, 2024 19:04:48
-
- syntheticperson
- Member
- 170 posts
- Joined: July 2010
- Offline
As an alternative test, I tried to export the Material Library containing the source Material X Standard surface & material to a USD file.
When I reference the USD file, and try to reconstruct it I end up with a Mtlx Displacement shader, a generic shader, and a USD Preview Surface VOP, each feeding into a collect VOP.
A little closer, but I expect a MtlX Standard Surface VOP, instead of a USD Preview Surface VOP.
When I reference the USD file, and try to reconstruct it I end up with a Mtlx Displacement shader, a generic shader, and a USD Preview Surface VOP, each feeding into a collect VOP.
A little closer, but I expect a MtlX Standard Surface VOP, instead of a USD Preview Surface VOP.
-
- syntheticperson
- Member
- 170 posts
- Joined: July 2010
- Offline
-
- Quick Links