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.


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 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).


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 the 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:
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-\bin -l C:\solidangle\mtoadeploy\2018\shaders bifrost_LiquidAeroFoam.0030.ass

ginstance nodes can override the step_size parameter of volume containers such as points, poly meshes, cubes, and spheres. This allows, for example, an instance of a volume shape to be shaded as a surface (by setting the instance step size to zero, opaque off, and using a surface shader.

Volume and surface 

Surface only



  • No labels
Privacy settings / Do not sell my personal information / Privacy/Cookies