question

Jan Walter avatar image
Jan Walter asked ·

Arnold standalone and USD

Hi,

I'm interested in using Arnold standalone with USD from Pixar. I did manage to compile the Arnold Hydra Render Delegate and exported the Cornell Box in ASCII and binary encoded versions from within Blender 2.90.1. Feel free to download both files from the GitHub repository (export_multi).

cornell-blend-2-90-1.png

The scene loads fine into usdview, as you can see here:

usdview.png

I can also switch to the Arnold Hydra Render Delegate and render e.g. using the following Hydra Settings:

hydra-settings.png

So, what are my options to assign Arnold shaders to the resulting USD files? What I really would like to do is to render one of those .usda or .usdc files with Arnold standalone, but somehow apply shaders to the geometry (e.g. a light emitter to the mesh which is used as such within Cycles).

I found already some hints in this forum where someone else exported from Blender and loaded the resulting USD file(s) into 3DS Max, but I thought I ask here as well. What is the simplest solution if I do not want to use any other DCC, just Arnold and USD files?

Links:

https://github.com/Autodesk/arnold-usd

https://github.com/wahn/export_multi/tree/master/00_cornell_box/usd

https://github.com/wahn/export_multi

arnoldusd
usdview.png (122.5 KiB)
hydra-settings.png (25.2 KiB)
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Pal Mezei avatar image
Pal Mezei answered ·

Hey Jan!


If you aim for a pure USD based workflow, I attached an example of using sublayers and overrides. Basically, you load the exported file as a sublayer in a "wrapper" and assign materials using overrides.


Example file: material_overrides.zip


I overrode the materials from the source file in two different ways. First, I replaced the material completely, then I modified the existing material and used the Arnold binding purpose.


Does this answer your question?


Cheers,

Pal.



Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Jan Walter avatar image
Jan Walter answered ·

Thanks again, @Pal I tried what you suggested and added a simple USD file, which defines a single Arnold material for the light emitting geometry, loads the untouched USD file (exported from Blender), and overwrites the material binding for it:cornell-box-materialsusda.png

It does render fine. Setting the emission > 1.0 didn't show an effect though, but that might be a problem of the Hydra render delegate version I'm using. I haven't compiled the latest version (yet).

Here is the commit for the light emitter overwrite:

https://github.com/wahn/export_multi/commit/e97505e72e9afd05a13015e7a4adfaa2916f3694

Everybody who has the Arnold Hydra render delegate working within usdview, should be able to download the two USD files, load the cornell_box_materials.usda file (which loads the cornell_box.usda file and overwrites a single material binding), and render with Arnold.


Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Jan Walter avatar image
Jan Walter answered ·

Hi @Pal Mezei, thanks, yes, that was what I was looking for. I will send an update once I made the Cornell Box example work, but the files you provided are a big help!

Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Jan Walter avatar image
Jan Walter answered ·

Thanks, @Stephen the operators are a good suggestion (even for other things I'm working on). I found this video with Fred and Sid, both ex-colleagues of mine:

https://youtu.be/CfG306oVW08

Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Jan Walter avatar image
Jan Walter answered ·

My point is that I would like to export a renderer agnostic USD file (e.g. from Blender, but it doesn't really matter where it comes from) and find a solution to render with Arnold (and other renderers) by somehow adding the renderer specific materials on a pure USD file basis. Is that a workflow anybody else is aiming for?

Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Geordie Moffatt avatar image
Geordie Moffatt answered ·

AFAIK there's nothing outside Maya and Houdini (Katana?) that supports authoring Arnold shaders and exporting to USD. If you try Maya you have to use the USD export in the Arnold menu (NOT standard file export). Houdini easiest way is to drop a Material Library node in Solaris and export USD.

Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Stephen Blair avatar image
Stephen Blair answered ·

Operators.

And/or do some tests with some DCC, export to USD, and see what to do in the USD file?

Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Welcome to the Arnold Answers community.

This is the place for Arnold renderer users everywhere to ask and answer rendering questions, and share knowledge about using Arnold, Arnold plugins, workflows and developing tools with Arnold.

If you are a new user to Arnold Answers, please first check out our FAQ and User Guide for more information.

When posting questions, please be sure to select the appropriate Space for your Arnold plugin and include the plugin version you are using.

Please include images, scene and log files whenever possible as this helps the community answer your questions.

Instructions for generating full verbosity log files are available for MtoA, MaxtoA, C4DtoA, HtoA, KtoA, and Kick.

If you are looking for Arnold Documentation and Support please visit the Arnold Support site.

To try Arnold please visit the Arnold Trial page.

Bottom No panel present for this section.