Exported USD porting to new Isaac Version

Hello there,
I’ve two issues to report with the USD format.
I’m trying out USDs converted from blender with an old version of the connector.
I’m getting a bunch of errors such as
UsdToMdl: Reached invalid assignment for parameter 'opacity_constant'. Tried to assign a 'int'(USD) to a 'float'(MDL) same for reflection_roughness_constant. I guess that this is the reason which some panels are missing on the materials shaders when I load the USD such as Albedo and Reflectivity.

Do you have a way to automatically update the USD files?

To solve this I’m manually processing the usd files.

First I installed the official USD package GitHub - PixarAnimationStudios/USD: Universal Scene Description

Then converted my usd from binary to text files

usdcat -o whatever.usda input.usd
python process.py whatever.usda
usdcat -o input.usd whatever.usda

the problem is twofold:

  • in the usd some variables are written as “int” while USD expect “float” and causes issues when loading (IDK if Isaac or more downstream the pxr package)
  • some float if set to “integer” values (e.g. 0.0, 1) are not loaded correctly for whatever reason (my guess is that the parser looks for the . in the string but still 0.0 seems to not be accepted) → solution process the file and write 0.00001 (1e-5 works as well) in that field.

Scripts can be found here and here for the batch processing

Hi @eliabntt94 - This seems like a connector issue. I will have to move this question to Blender forum.

1 Like