Material Handling in a USD file

Dear Community,

I have a USD file showing all the materials for the different assets correctly. I want to choose the base color image from a PBR out of the different metallic/roughness… It seems the export functionality in Isaacsim from usd to .fbx is already doing something similar. I would to know if this is actually possible: go over the different texture images provided to a mesh and be able to pick only the basecolor (I want to do that through python scripting)

Thank you for your help

Anthony

Hi there @toninsemaan,

I think since it has been quiet here for some time, you might have better luck in the Omniverse category?

I move the post over there and I am sure you will get some help.

Thanks!

Hi @toninsemaan. Yes, it’s possible. You could traverse you stage and find all the meshes like this: Find All the Prims of a Given Type — Omniverse USD documentation

You can then compute which material is bound to each mesh: Universal Scene Description: UsdShadeMaterialBindingAPI Class Reference

On the OmniPBR shader, for example, the base color texture is found on an attribute named: inputs:diffuse_texture.

Let me know if you need a more concrete example.

1 Like