Bifrost / Arnold integration

Bifrost / Arnold integration

rodeofx
Explorer Explorer
1,757 Views
3 Replies
Message 1 of 4

Bifrost / Arnold integration

rodeofx
Explorer
Explorer

Hey there!

When deploying bifrost I see there's library associated to arnold, i presume these libraries need to be added to LD_LIBRARY_PATH. That being said, i'm wondering how it work, the documentation left me perplex

 

 

ls -la ./bifrost/2.0.2.0/maya-2018/bifrost/
total 72
drwxr-xr-x 12 root root  5120 Aug 22 13:44 .
drwxr-xr-x  4 root root  2048 Aug 22 13:44 ..
drwxr-xr-x  2 root root  1024 Aug 22 13:43 arnold-5.3.0.0
drwxr-xr-x  2 root root  2560 Aug 22 13:43 bin
drwxr-xr-x  3 root root   512 Aug 22 13:43 examples
drwxr-xr-x  2 root root 25600 Aug 22 13:43 icons
drwxr-xr-x  2 root root 44032 Aug 22 13:44 lib
drwxr-xr-x  2 root root  2560 Aug 22 13:44 plug-ins
drwxr-xr-x 15 root root  9728 Aug 22 13:44 resources
drwxr-xr-x  2 root root 49152 Aug 22 13:44 scripts
drwxr-xr-x  3 root root   512 Aug 22 13:44 sdk
drwxr-xr-x  3 root root   512 Aug 22 13:44 thirdparty

The folder is arnold-5.3.0.0.

It includes 2 libraries:

libarnold_bifrost_impl.so
libarnold_bifrost.so

 

The documentation here says:

The minimum version of Arnold for Maya that supports the rendering of Bifrost content created from the procedural graph is 3.2.2. All Bifrost releases are compatible with this or later versions of Arnold for Maya. In the event where this is not the case, information regarding compatibility will be provided in the release notes.

 

 

0 Likes
Accepted solutions (1)
1,758 Views
3 Replies
Replies (3)
Message 2 of 4

jonah.friedman
Community Manager
Community Manager

Hi Tony / Rodeo!


MtoA 3.2.2 vs Arnold 5.3.0.0: The Arnold-Bifrost procedural is built against Arnold 5.3.0.0, so that will work with Arnold 5.3.x. If you use kick or the render-time procedural, you could theoretically use it with MtoAs earlier than 3.2.2 as you indicate, but I wouldn't recommend it. Almost all of the Arnold integration is in the procedural, but a compatible MtoA plugin is needed for being able to render a Bifrost Graph that's in your Maya scene. This is a pretty thin layer, which is how we're able to have Bifrost be compatible with many future MtoA versions.


To render with Kick, all you need is for Arnold to find the procedural in the "5.3.0.0" directory. It will automatically find the libraries it needs provided that structure is intact. You can use the -l flag with kick, for example, as documented here: https://docs.arnoldrenderer.com/display/A5AFMUG/Getting+Started+With+Kick, or use ARNOLD_PLUGIN_PATH. 

Jonah Friedman
Bifrost Product Manager
0 Likes
Message 3 of 4

Stephen.Blair
Community Manager
Community Manager
Accepted solution

Like Jonah said, something compiled with Arnold 5.3 is compatible with Arnold 5.4

In a startup log for MtoA (sorry for the Windows log), you'd see

00:00:00  1016MB         | loading plugin: C:/Program Files/Autodesk/Bifrost/Maya2019/2.0.1.1/bifrost/arnold-5.3.0.0/arnold_bifrost.dll ...
00:00:00  1016MB         |  arnold_bifrost.dll: bifrost_graph uses Arnold 5.3.0.0
00:00:00  1016MB         |  arnold_bifrost.dll: bifrost_object uses Arnold 5.3.0.0
00:00:00  1016MB         |  arnold_bifrost.dll: bifrost_multires_volume uses Arnold 5.3.0.0
00:00:00  1016MB         |  arnold_bifrost.dll: bifrost_multires_implicit uses Arnold 5.3.0.0
00:00:00  1017MB         |  arnold_bifrost.dll: bifrost_volume uses Arnold 5.3.0.0
00:00:00  1017MB         |  arnold_bifrost.dll: bifrost_points uses Arnold 5.3.0.0
00:00:00  1017MB         |  arnold_bifrost.dll: bifrost_implicit uses Arnold 5.3.0.0
00:00:00  1017MB         |  arnold_bifrost.dll: bifrost_polymesh uses Arnold 5.3.0.0
00:00:00  1017MB         |  arnold_bifrost.dll: bifrost_blocks uses Arnold 5.3.0.0

To use those bifrost nodes with kick:

kick -nodes -l "C:/Program Files/Autodesk/Bifrost/Maya2019/2.0.1.1/bifrost/arnold-5.3.0.0"

loading plugins from C:/Program Files/Autodesk/Bifrost/Maya2019/2.0.1.1/bifrost/arnold-5.3.0.0
 bifrost_blocks                   shape (procedural)
 bifrost_graph                    shape (procedural)
 bifrost_implicit                 shape (implicit)
 bifrost_multires_implicit        shape (implicit)
 bifrost_multires_volume          shape (volume)
 bifrost_object                   shape (procedural)
 bifrost_points                   shape (procedural)
 bifrost_polymesh                 shape (procedural)
 bifrost_volume                   shape (volume)

I could use ARNOLD_PLUGIN_PATH instead of -l



// Stephen Blair
// Arnold Renderer Support
0 Likes
Message 4 of 4

rodeofx
Explorer
Explorer

Thank you to both of you, help me understand a lil bit more!

0 Likes