donat6
2025年6月10日 14:14:09
Hi,
Path mapping in Solaris is not working as we expect.
We are trying to render on the farm and we are looking for a solution that would allow us to render Windows created Houdini scenes on linux render nodes.
I added a path mapping to the HOUDINI_PATHMAP environment variable such as :
os.environ['HOUDINI_PATHMAP'] = "{'/mnt/vol1', '//sledge/vol1'}"
As you will have guessed, those two point to the same network share, the /mnt/vol1 is for Linux, the second one if for Windows
I then start Houdini on Windows
In the /obj environment, I create a file node. I can use a filepath like //sledge/vol1/somegeo.usd
and it loads fine. I can change the filepath to /mnt/vol1/somegeo.usd
and it still works, which shows that the path mapping is working as expected.
If I head over to the /stage and create a reference node, I can use the filepath //sledge/vol1/somegeo.usd
but not the filepath /mnt/vol1/somegeo.usd
. The same issue arises with 'sublayer' nodes
Is there any reason for this ? Could this be fixed ?
PS: I'm going to submit this to the official support, but I'm interested in any community answer too.
Tested on Houdini 20.5.410, on Windows 10
robp_sidefx
2025年6月13日 10:41:05
For the visibility of the community, this can be solved at the USD-level via a custom Asset Resolver (we have a proof-of-concept that can be shared), and there's an open RFE for a LOP-level workflow.
Heileif
2025年6月13日 12:06:23
robp_sidefx
For the visibility of the community, this can be solved at the USD-level via a custom Asset Resolver (we have a proof-of-concept that can be shared), and there's an open RFE for a LOP-level workflow.
Good to know!
jparker
2025年6月16日 20:15:21
Yeah, USD paths live outside of the standard Houdini file path management.
Also to put this out there, although I'm sure we're a tiny minority by now...
In addition to path mapping working differently, if you have any old school custom `$HH/GEOio.json` file types that you're used to loading any place .bgeos work, they won't load in the USD input nodes (reference / sublayer). You can get it to work by adding your file extensions to `$HH/dso/usd_plugins/usdHGeo/resources/plugInfo.json`, but it's not pipeline-friendly.
lbs_vfx
2025年6月18日 15:44:56
robp_sidefx
For the visibility of the community, this can be solved at the USD-level via a custom Asset Resolver (we have a proof-of-concept that can be shared), and there's an open RFE for a LOP-level workflow.
How to access the POC of custom asset resolver? Please share resources links
robp_sidefx
2025年6月18日 16:04:07
lbs_vfx
How to access the POC of custom asset resolver? Please share resources links
Here you go!
hcustom HPathMapArResolver.C
cp -r usd_plugins $HOME/houdini20.5/dso/
If you need it to work on the Windows boxes, you'll probably need some tweaks to the way you invoke hcustom and will likely need to modify usd_plugins/arHPathMap/resources/plugInfo.json
If you find it's not working, try also adding TF_DEBUG="PLUG*" to your environment, which should print out (lots of) information about the USD plugins being loaded.
laerieval
2025年8月15日 03:42:56
Hello!
I am on h20.5.684 , my scene has been built on windows, rendering is locally on linux, I edited the pathmap.json inside /config
at it works fine in the viewport, but when husk is spawned I get no textures etc.
Will using the arHPathMap.tgz solution work? I would be amazing if it worked out of the box...
Many thanks!
V
robp_sidefx
2025年8月15日 15:22:54
laerieval
Will using the arHPathMap.tgz solution work? I would be amazing if it worked out of the box...
It might ... try it and let us know!