Home

Awesome

USD-URI-resolver

A generic, URI based resolver for USD, support custom plugins. This is a fork of https://github.com/LumaPictures/usd-uri-resolver with support for S3 object storage.

Project Goals

S3 specific

Features

Current

Planned

Building

You'll need the following libraries to build the project; newer versions most likely work as well, but they are not tested. Currently, the cmake files are looking for the openexr libs, but only use the half headers. This will be removed in the future.

PackageVersion
USD0.7.6+ (stock)
TBB4.3+
OpenEXR2.2.0+
Boost1.61.0+
CMAKE3.1+

MySQL

If you want to build the MySQL resolver, you need the MySQL Connector C library version 6.1.9+. You can download the MySql library here or use the package manager.

sudo apt install libmysqlclient-dev

Enable the cmake option BUILD_MYSQL_RESOLVER. You may want to use MYSQL_USE_STATIC_LIB and a custom MYSQL_ROOT too.

mkdir build && cd build
cmake -G 'Unix Makefiles' -DBUILD_MYSQL_RESOLVER ..

S3

Get the AWS sdk for C++.

git clone https://github.com/aws/aws-sdk-cpp
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_ONLY="s3" ../aws-sdk-cpp/
make && sudo make install

Enable the cmake option BUILD_S3_RESOLVER when creating the makefiles.

URIResolver

There are two main ways to configure a library location. 1, configure an environment variable. 2, pass the location of the library using -D<varname>=<path> to cmake. This will be simplified soon, once we add proper find modules.

See also vscode tasks for some pointers.

Contributing

TODO.

Using the resolver.

Consult the README.md installed alongside the resolvers.