Bifrost

Animation available here

 

MtoA supports Bifrost, a tool for creating simulated liquid and volume effects in Maya. When creating a Bifröst simulation system with Maya 2018.1[+] and Arnold 5 a new set of shading graphs are created for each system using some of Arnolds included shaders.

Liquid (Standard Surface)Foam (Standard Volume)Aero (Standard Volume)

Renders as a Surface.

Surface Controls-> Surface Type - Mesh.

Renders as Points.

Point Control-> Type - Spheres.

Renders as a Volume.

Volume Controls-> Density Channel - Density.

 

Each of these shaders is attached to the legacy SG node corresponding to the sim (bifrostLiquidMaterial, bifrostFoamMaterial, bifrostAeroMaterial). The attribute settings of each shader were chosen to achieve a default look; for Liquid - deep ocean, for Foam - point particle and for Aero - smoke.

Bifrost workflow examples can be found here.

Liquid

Arnold allows for liquid to be rendered as a mesh or as an Implicit surface. Those attributes can be found in various tabs found in the liquidShape node under the Arnold tab. By default, a Standard Surface shader is assigned to a Bifröst liquid with the shader attributes tuned to simulate a deep water effect.

This is rendered as a poly mesh. It can be controlled using a Standard Surface shader.

Standard Surface shader assigned to Bifrost Liquid

 

The rendered output of the liquid simulation can be controlled procedurally with the following attributes found under Liquid Shape-> Arnold->Surface Controls-> Mesh Controls :

 

Foam

Foam particles can be added to liquids to create bubbles, foam, and spray effects. These are rendered as points or spheres in MtoA which support motion blur. Per-particle attributes are exported as user data. The particle attributes are controlled by the native foam shader with ramps (diffuse, reflection, etc...). Foam can be treated either as volumetric spheres (with a volume shader ) (i.e. points with step_size) or points/spheres primitive (with a surface shader). 

You can assign any kind of shader (surface or volume) to foam, however, points are ignored when a volume shader is used and in this case, spheres are rendered instead.

The BifrostFoamMaterial and BifrostAeroMaterial are no longer supported in MtoA for Maya 2018+ (they no longer translate to Arnold shader nodes).

 Foam is rendered as a volume primitive. It can be controlled using a Standard Volume shader. 

Standard Volume shader assigned to Bifrost Aero

 

The controls can be found in the foamShape node under the Arnold-> Points Control tab.

 

The Standard Volume is not applied by default to Bifrost foam in Maya 2018+.

You can render foam with either Standard Volume (if point step size > 0) or Standard Surface (if point step size == 0).

Aero

Similar to foam rendering, a Standard Volume shader is assigned to the Bifröst aero where the Density Channel uses the Aero's smoke channel. It is rendered as a volume primitive.

Standard Volume shader assigned to Bifrost Aero

 

The volume controls can be found in the aeroShape node under the Arnold-> Volume Controls tab:

 

Rendering Channels

Using the Utility user data nodes, you can create a shading network in order to render out Bifröst channels.

  • You can use the Color Channel Remap in the Particle Display section of the Bifrost shape to visualize the vorticity in the Viewport and see what min/max values you will need in the remapValue shader node.
  • In the Arnold section of the Bifrost shape, make sure Opacity is turned off.
  • Also in the Arnold section, you will see that vorticity is an exported channel by default. You can add others like velocity there too (just leave a space between words).
  • For the shading network, make sure you input vorticity (or whatever channel you have listed from the point above) as the Attribute in the aiUserDataVector node.
  • Also, in the remapValue node, make sure to use the input min/max values from the viewport channel remap mentioned in the first point.

 

 

 

Export Ass and Kick
  • Set up your Maya scene with Bifrost using the above methods.
  • Go to File > Export All or Export Selection.
  • Change File type to ASS Export.
  • In the Export sub-section, enable the option Expand Procedurals.
  • Configure other settings as needed and export the file(s).
  • Render the resulting ass files with Kick.

 

For Aero rendering:
  1. You will also need to append to the PATH or library path environment variable:
Linux: LD_LIBRARY_PATH
Mac: DYLD_LIBRARY_PATH
Windows: PATH
 
Windows Example:
PATH=C:\Program Files\Autodesk\Bifrost\Maya2018\bin;C:\Program Files\Autodesk\Maya2018\bin
2. When rendering the ass file(s) with Kick, it is necessary to use the “-l” flag to point to the Bifrost procedural’s bin location. Example Kick command:
kick.exe -l C:\Program Files\Autodesk\Bifrost\1.5.0\Arnold-5.0.0.0\bin -l C:\solidangle\mtoadeploy\2018\shaders bifrost_LiquidAeroFoam.0030.ass

 

 

  • No labels