MaterialX online library

   13419   31   9
User Avatar
Member
7762 posts
Joined: Sept. 2011
Online
The edit material network node will work on the material. I don't think there's a way to edit node graphs directly though.
User Avatar
Member
169 posts
Joined: Nov. 2013
Offline
I installed the Python 2 version of 19.0.498 and also the libgl per Mark's suggestion and it works now
User Avatar
Member
5 posts
Joined: May 2016
Offline
jsmack Thanks...
But a little sad !
User Avatar
Member
12459 posts
Joined: July 2005
Offline
JYA
jsmack Thanks...
But a little sad !
There are no methods to directly edit anything in LOPs, you always need an operation/LOP to do it. Have you tried using an Edit Material LOP to edit it (as jsmack suggests)? It should give you want you want?

Also: currently there is no node-based way of visualizing USD node graphs in Solaris. The Scene Graph Tree is really the only way, and it's, well, a tree.
Edited by jason_iversen - Jan. 26, 2022 13:55:20
Jason Iversen, Technology Supervisor & FX Pipeline/R+D Lead @ Weta FX
also, http://www.odforce.net [www.odforce.net]
User Avatar
Member
7762 posts
Joined: Sept. 2011
Online
jason_iversen
There are no methods to directly edit anything in LOPs, you always need an operation/LOP to do it. Have you tried using an Edit Material LOP to edit it (as jsmack suggests)? It should give you want you want?

Also: currently there is no node-based way of visualizing USD node graphs in Solaris. The Scene Graph Tree is really the only way, and it's, well, a tree.

You can use the edit material node to edit the material nodes, which includes editing the nodegraphs within. My post was referring to editing the referenced node graphs directly so that materials that reference them would inherit the changes. Maybe the edit material network node could be generalized to edit node graphs too.
User Avatar
Member
5 posts
Joined: May 2016
Offline
jsmack > Thank you

I did it


Best regards
User Avatar
Member
38 posts
Joined: Oct. 2021
Offline
Hi Guys,
using H19.0.540 Python3 and I can't get mtlX work with Karma even if graph is ok..

Any hint?
Thank you
Wow factor
User Avatar
Member
55 posts
Joined: May 2013
Offline
This library and workflow is very promising, seems a bit buggy to me at the moment though

I've got a scene graph and I'm referencing in a mtlx shader from the library and assigning it and it works fine - shows up in the scene graph as MaterialX_Graph, I can edit it with an Edit Material Network LOP or an Edit Material Properties LOP, both work fine.



I then write out a USD file and reference it back in on top of my other layers and as soon as I hit reload I get a default gray shader. I've got some other shaders in there and they work ok. In the scene graph it's just empty prims.



If I go back to the section of my graph where I'm referencing in the mtlx library shader suddenly it's no longer in the scene graph... just the root of where it was being appended.




It's more than likely I'm doing something wrong, I'm a Sloaris novice but I've tried with various shaders, I've tried with and without Edit Material Network LOP etc and no joy.
Edited by j00ey - Aug. 17, 2022 11:20:53

Attachments:
sceneGraph1.jpg (59.1 KB)
sceneGraph2.jpg (66.4 KB)
sceneGraph3.jpg (52.2 KB)

User Avatar
Staff
4438 posts
Joined: July 2005
Offline
Probably something wrong with the path to the mtlx file. Assuming you're using a Reference LOP to reference in the mtlx file, what is the path you are specifying to the mtlx file? You should always use absolute paths in the Reference LOP (and Sublayer LOP) to ensure the path gets written out properly when saving the USD file to disk. In the second and third images, are there any warnings on any of your LOP nodes? Something about not being able to find or load the specified mtlx file? My other guess would be that the primitive path being referenced from the mtlx file isn't being specified properly. This should also result in a warning somewhere in your LOP network. Though LOPs should take care of that for you, so I hope this isn't the issue.

If you could attach a hip file (and the MTLX file) that would really help...
User Avatar
Member
55 posts
Joined: May 2013
Offline
Hi, thanks for that.

I am using a Reference LOP to bring in the .mtlx file and it does have an absolute path -

D:/USD_assets/mtlx/SciFi_Brick_4k_16b/SciFi_Brick.mtlx

and I wrote this layer out as usda to see if I could spot anything and it doesn't seem wrong to me :

def "mtl" (
prepend references = @D:/USD_assets/mtlx/SciFi_Brick_4k_16b/SciFi_Brick.mtlx@</MaterialX>
)

I didn't know that was something I should be doing so my USD ROPs are all using $HIP/geo/ and when I read the layers back in I'm also using $HIP.

There aren't any warnings or errors on the nodes in the Network View.

I'll attach a hip and the mtlx file here.The textures are too big to upload here so if you need them for testing they're here : https://matlib.gpuopen.com/main/materials/all?category=SciFi, [matlib.gpuopen.com] it's called SciFi Brick

Thanks again for looking.

Attachments:
SciFi_Brick.mtlx (8.0 KB)
USD_fiddling4.hiplc (1.3 MB)

User Avatar
Staff
4438 posts
Joined: July 2005
Offline
This appears to be a bug in either USD or the MTLX USD plugin. Coincidentally we received a bug submission about this problem today. The core of the issue is that calling Reload on an MTLX file causes the loading of that file to fail. I will try to distill this down to a simple test case so I can submit a bug to Pixar.
User Avatar
Member
55 posts
Joined: May 2013
Offline
Thanks very much for the info.
  • Quick Links