The Bifröst Ocean Simulation System lets you create realistic ocean surfaces with waves, ripples, and wakes. You start with a flat mesh, and then layer and mix solvers and influences on top. Each element is independent of the resolution of the others, and can be cached separately for faster playback. You can use the resulting deformed mesh directly, or transfer the result to another mesh. You can also use the cached EXR files as vector displacement maps when rendering.
For more information, see BOSS — Bifröst Ocean Simulation System.
For more information, see Control velocity with Bifröst motion fields.
Use kill fields to delete unwanted liquid, foam, or aero particles in a Bifröst simulation. The available options allow you to affect particles based on certain criteria, when the particles are within a specific volume. See Delete particles with kill fields.
When you add a mesh to a simulation, for example as an emitter or collider, a Bifrost attribute group no longer gets added to the mesh's shape node. Instead, there are new nodes which can be shared if you want the same settings to be used by multiple meshes. These new nodes replace the AttrNotif nodes in the scene graph.
There is a specific Bifröst property type for each of the mesh types that you can add to a simulation, such as emitters, colliders, and others. In addition to attributes specific to each property type, you can use the boundary controls to limit the effect to the intersection of the mesh and an implicit shape. You can also specify a voxel scale factor so that, for example, you can use different voxel scales for different colliders.
When adding an object to a simulation, you can choose whether or not to share an existing property:
Alternatively, it is also possible to share a property by connecting a mesh shape's World Mesh output into one of a Bifröst mesh property's available Meshes inputs in the Node Editor.
The Refine Nearby Fluids on colliders prevents the fluid resolution from being coarsened in regions that are close to the collider when Spatial Adaptivity is enabled on the container. Turn this option off on colliders where less detail is needed, for example, on the bottom and sides of pools, and turn it on for colliders where you want full detail. This does not affect the free surface (air boundary), which always uses full resolution.
Creating a Bifröst liquid now generates a bifrostLiquidPropertiesContainer node in addition to the bifrostLiquidContainer and liquidShape nodes. The attributes available on the bifrostLiquidPropertiesContainer node control the properties of the liquid, while the bifrostLiquidContainer node contains the global controls for the simulation. Similarly, creating an aero simulation creates bifrostAeroPropertiesContainer and bifrostAeroContainer nodes.
Adding foam to a liquid now generates a bifrostFoamPropertiesContainer for Foam attributes. Foam attributes are no longer added to the bifrostLiquidContainer node.
Each container and property node has an Evaluation Type attribute, which should be left at its default value.
A new Bifröst cache file structure makes it easier to locate and identify cache files, especially when caching scenes that include multiple Bifröst containers. When you cache a Bifröst simulation, the default Maya project rules create the following cache file structure:
cache/bifrost/<scene name>/<container name>/<object name>.
When you translate, rotate, or scale a Bifröst simulation, its results are transformed in world space. This is particularly useful when loading a cache into a new scene with other elements. However, to keep a simulation aligned with its emitters, colliders, and other input objects, leave it untransformed.
Scratch cached frames now display dark green () when the simulation settings or input object have been modified. The cached frames get flushed automatically when you return to the first frame of the simulation.
When displaying channel values as vectors, you can now scale the vector lengths.
now shows the number of time steps per frame, in addition to the number of particles and voxels.
It is now easier to set up guided liquid simulations. You can now simply use a deforming plane or other flat mesh as a guide, instead of using a deforming closed volume as an emitter. In addition, you can restrict the simulation to specific regions, as well as simulate a layer on top of the guide for extra splashes. See Guide Bifröst liquid with a mesh.
You can set a physically-correct value for viscosity on the bifrostLiquidPropertiesContainer node. The non–physically-correct Scale setting is still available as a velocity-smoothing factor for faster results in situations where accuracy is not required.
New curvature and churn channels let you see where curvature and churn is being generated in a liquid. When enabled, Bifröst computes curvature and churn values, which you can display as color channels in the viewport. This way, you can visualize the potential locations for foam emission in the liquid before adding a foam object. You can also use this information to determine accurate Min Liquid Churn and Min Liquid Curvature values for the foam before simulating.
Access Curvature Enable and Churn Enable in the Optional Channels attribute section of the bifrostLiquidPropertyContainer node Attribute Editor. If your liquid simulation does not include foam particles, leave these options off to avoid unnecessary computations.
New Erosion attributes control how closely the liquid boundary gets shrinkwrapped back to the particle positions. Use these attributes to avoid problems in various situations, such as still water versus thin flows or energetic splashing.
In turbulent liquids, use them to avoid problems, such as fast particles "surfing" ahead of boats wakes, fluid repulsion, particle clumping, or particles climbing near the walls of colliders. Erosion settings can also help achieve equilibrium in still-water situations.
You can use the Dissipation Rate attribute to control the dissipation of the smoke channel to reproduce effects like evaporation. In addition, you can control the velocity of the wind and the strength of its effect on aero simulations using the Wind X, Wind Y, Wind Z, and Wind Magnitude attributes, as well as mimic turbulence using Randomize Velocity. For more information, see Bifröst Air attributes (aero only)
The option Reduce Flow Noise increases the smoothness of aero voxel renderings. This is most effective when smoke spreads out over large volumes, resulting in insufficient particle sampling.
For more information, see Bifröst Particle Density attributes.
You can now visualize the smoke channel in your Aero simulations. In the aeroShape node Attribute Editor, select Smoke from the Color Channel list to display smoke as a color ramp.
New Bifröst foam attributes add more control and increased accuracy to foam simulations. With these new attributes you can:
You can limit foam emission to the volume of a polygon object using a Foam Mask. This gives you more control over which regions of a liquid generate foam particles. For example, add a masking object around a boat and its wake so that foam only generates in this area of the liquid.
Foam Mask attributes are added to the shape node of the masking polygon object. Use these attributes to toggle the mask on and off as well as to set the voxelization Thickness and Mode.
A Mask Falloff Distance attribute on the bifrostFoamPropertiesContainer node lets you set a falloff region, in voxels, to eliminate hard boundaries around the input mesh.
Bifröst killplanes now eliminate foam particles.