OpenUSD | USD Asset Resolver | Practical Example/Reference Implementations
as part of the USD Survival Guide there is an asset resolver sub-section. Apart from giving an overview of what the asset resolver is/does, it also has some example resolvers. These can be found in our USD Asset Resolver – GitHub Repository
Currently the repo holds these resolvers:
- Production Resolvers
- File Resolver – A file system based resolver similar to the default resolver with support for custom mapping pairs as well as at runtime modification and refreshing.
- Cached Resolver – A resolver that first consults an internal resolver context dependent cache to resolve asset paths. If the asset path is not found in the cache, it will redirect the request to Python and cache the result. This is ideal for smaller studios, as this preserves the speed of C++ with the flexibility of Python.
- RnD Resolvers
- Python Resolver – Python based implementation of the file resolver. The goal of this resolver is to enable easier RnD by running all resolver and resolver context related methods in Python. It can be used to quickly inspect resolve calls and to setup prototypes of resolvers that can then later be re-written in C++ as it is easier to code database interactions in Python for initial research.
- Proof Of Concept Resolvers
- Http Resolver – A proof of concept http resolver. This is kindly provided and maintained by @charlesfleche in the arHttp: Offloads USD asset resolution to an HTTP server 3repository. For documentation, feature suggestions and bug reports, please file a ticket there. This repo handles the auto-compilation against DCCs and exposing to the automatic installation update manager UI.
Currently we only auto-compile against Houdini, if someone from the other major DCC vendors is interested in adding their app to the list, please get in touch
I’d love to hear your feedback! If you stumble upon any other interesting open source resolvers, let me know and we can try adding them too.
Everything is open-source, so please feel free to contribute
Website: USD Asset Resolver – GitHub Pages
GitHub Repository: github.com/LucaScheller/VFX-UsdAssetResolver
Alliance of OpenUSD Forum Post: forum.aousd.org/t/usd-asset-resolver-practical-example-reference-implementations
Our introduction video tutorial covers how to install (and optionally build) the OpenUSD asset resolver production/reference implementations that are available in the above mentioned Usd Asset Resolver repository.
The tutorial covers how to use the automatic installation manager for Houdini, to easily install all resolvers with a few clicks, as well as how to build them yourself. We also look at how you can customize them to fit your needs without having to code in C++. This is especially useful for smaller studios, who often don’t have the C++ development resources.
You can also view tutorials on our tutorials section in the UsdAssetResolver documentation.