I’m running into an issue where UsdPreviewSurface materials are not displaying in usdview using the Storm renderer (Hydra 2.0) in OpenUSD 26.0. This worked fine in older Hydra 1.0 setups, but now the geometry appears as default gray even when materials are bound.
In my attached example, the material binding doesn’t have any explicit purpose set
rel material:binding = </scene/Materials/orange>
I tried setting the purpose explicitly ( e.g full/preview/allPurpose ) and still doesn’t show.
Is this a known Hydra 2.0 migration issue? or perhaps I am missing something obvious.
It looks like the MaterialBindingAPI is not being explicitly applied to the meshes with the material bindings. Hydra 1 was very forgiving about this; Hydra 2 is … not
Hi @hamed. USDPreviewSurface remains supported. If you have an asset where USD preview materials are not working under Hydra 2 despite MaterialBindingAPI, feel free to share here or file a github issue.
In general, it is true that Hydra 2 is more strict regarding application of USD API schemas, and that has caused us work to upgrade our own assets to conform. If I understand correctly, the intention behind this choice was an efficiency measure: allowing the runtime adapters to only engage in doing extra work when the API is present.