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