If you do Arnold | Material | Import Materials from the top level menu in HtoA, you can import a .mtlx file as a shader network inside an Arnold Material Builder, since it contains Arnold nodes.
You can then copy this to Solaris inside an Edit Material LOP and assign it there.
You can render solariss MaterialX with arnold in houdini 19.0.622, but till now in houdini 19.5.303 there is an error | node "ND_XXX_XXX" is not installed.
Hi, I'm running into the same issue in Houdini 19.0.720.
Will there be support for Solaris' materialX nodes by any chance? It seems like the perfect cross-renderer shader. But As Richard mentioned, only the UsdPreviewSurface is recognized at the moment.
Edit: MaterialX nodes work now, with Arnold 7.1.4.3 and HtoA 6.1.4.3
You can, it's all about the node graph structure in the mtlx file.
First of all there is some rules to write a successful mtlx file from houdini:
1- Like OSL, you can't have more than one output type for you setup. So, make sure you have just one output, for example you can't have surface shader, and displacement shader output in the same file, houdini will write it but will not be able to read it again.
2- Your network should be exported from a subnet, I mean you can't just select you mtlx shader network from vex builder and export it, you need to but it inside a subnet and name it, the subnet name will be your nodeGraph name after writing the mtlx file.
3- all shader network connections inside that subnet should respect data types between node, for example, DON'T connect boolen output to float, or connect RGB output to float input, convert it first to the right data type then connect it. you can use separate and combine node to achieve that.
4-if you still can't export without errors, usually because houdini can't get the node input connections yet, for easy fix, convert this subnet to digital asset, then export it, but all your promoted parameters should be subnet inputs and your output should be subnet output.(if you need to bake it as a mtlx shader in the feature, if you just need to export just convert the subnet without inputs just an output node)
After exporting without any errors in houdini console, you can import and use the same setup in Houdini or any other software that supports mtlx.
You can not just export your material network and import it again to render with it. Also, you can convert your shader network to a shader node inside houdini to be always there as a mtlx node, using mtlx2hda.py and mtlx2karma.py, I can make a tutorial about how to make a materialX node from a network inside houdini, let me know if interested.