OpenUSD icon indicating copy to clipboard operation
OpenUSD copied to clipboard

Hydra scene index mode doesn't resolve UDIM paths

Open marktucker opened this issue 1 year ago • 5 comments

Try to render the attached scene with USDIMAGINGGL_ENGINE_ENABLE_SCENE_INDEX=1. If you start the render process from some directory other than the one containing the USDA file, the UDIM maps will not be found (if the cwd for the process is where the USDA file is, chances are the renderer will find the UDIMs using the unresolved relative paths).

I can see no evidence that when using scene index plugins that UDIM paths are run through UsdShadeUdimUtils::ResolveUdimPath as they are when using the legacy hydra delegate.

udim.zip

marktucker avatar Jan 23 '25 18:01 marktucker

If this is not currently on your radar to be fixed for 25.05, I can try to come up with a PR.

marktucker avatar Jan 23 '25 18:01 marktucker

Filed as internal issue #USD-10592

(This is an automated message. See here for more information.)

jesschimein avatar Jan 23 '25 20:01 jesschimein

This is the first I've seen this, although it doesn't look too hard to fix. I'll gladly accept any PRs though!

We could consider specializing UsdImagingDataSourceAttribute<SdfAssetPath> to check for the "<UDIM>" string and call this; or have UsdImagingDataSourceMaterial wrap asset parameters and call this... While I don't particularly expect UDIMs outside of shader inputs, there's something nice about handling it uniformly in our baseline asset path handling. Let me know what you think!

Regardless, we'll try to address this for 25.05. It seems relatively high value for effort.

tcauchois avatar Jan 24 '25 18:01 tcauchois

Just adding a comment to make sure you see that I did submit a PR for this...

marktucker avatar Jan 24 '25 18:01 marktucker

Ahh thanks, missed that!

tcauchois avatar Jan 24 '25 20:01 tcauchois