Share

Bifrost 3.1.0.8 Release Notes

Bifrost 3.1.0.8 is a major release with SDK updates, new capabilities, performance improvements, and bug fixes. It is also downloadable from the Autodesk Accounts Portal for Maya 2027.*, 2026.*, and 2025.*. See Bifrost for Maya Compatibility for more information.

Note:

The last part of the version number, ".8", reflects a change in how we track patch versions internally.

For installation help, see Download and install Bifrost for Maya.

Release highlights

Per-instance colors on a cloud of turtles
Viewport speed and feature improvements for instances. Instances can be colored by the point_color property.

Viewport updates

  • Automatic geometry cache to prevent unnecessary translation during playback or editing. This improves playback and interactivity for instances.
  • The rigid body diagnostic displays and the explode_geometry node make use of the new support for colored instances defined by point color for better visualization performance.

Searching for nodes in the graph

The new search box in the Bifrost Graph Editor lets you easily find where specific nodes are used. The search finds strings in both node names and node types, and supports regular expressions (regex). Select a node in the list of matches to automatically frame and highlight it. See Find a node in the graph.

Searching for nodes in the graph

Rigid body simulation

Several new compounds make it easier to set up various rigid body scenarios. In particular, it is now easier to select instances from one RBD simulation and use them to emit into a secondary simulation.

In addition:

  • The diagnostic display of rigid bodies now uses colored instances instead of baked geometry, allowing for faster iteration.
  • Rigid bodies can be emitted during a simulation, instead of only at a start frame.
  • Instanced pre-fractured, constrained objects can be used in rigid body simulations.

Rigging performance

Rigs built with rigging modules now support Maya’s Cached Playback, providing improved animation playback performance. Note that Cached Playback works only if no feedback ports are used, so it's not used for playback of modules that include simulation features.

In addition, module-based rigs that are split across multiple Bifrost graphs are now faster. Manipulation of many non-keyframed transforms is also faster.

There are also the new update_cache and update_cache_if nodes that you can use to avoid unnecessary recomputations in your own graphs and compounds.

New nodes

Here's the list of new nodes in this version:

  • update_cache (Core::Graph)
  • update_cache_if (Core::Graph)
  • deform_onto_mesh_UVs (Modeling::Deformation)
  • wrap_deform_by_mesh (Modeling::Deformation)
  • wrap_deform_by_points (Modeling::Deformation)
  • create_mesh_from_UVs (Modeling::Mesh)
  • preserve_matrix_chain_length (Rigging::Solver)
  • compute_matrix_chain_length (Rigging::Solver::Utils)
  • precompute_guide_volume (Simulation::Liquids)
  • precompute_simulation_region_volume (Simulation::Liquids)
  • basic_rigid_body_emission_graph (Simulation::RigidBodies)
  • construct_hard_constraints (Simulation::RigidBodies)
  • create_rigid_instances (Simulation::RigidBodies)
  • emit_rigid_bodies (Simulation::RigidBodies)
  • extract_instances_from_rigid_body_solver (Simulation::RigidBodies)
  • filter_rigid_bodies (Simulation::RigidBodies)
  • filter_rigid_contact_points (Simulation::RigidBodies)
  • get_instances_from_rigid_body_solver (Simulation::RigidBodies)
  • make_bodies_kinematic (Simulation::RigidBodies)
  • source_rigid_bodies (Simulation::RigidBodies)
  • get_time_samples (USD::Attribute)
  • array_of_objects_to_stage (USD::IO)
  • object_to_stage (USD::IO)
  • create_prim_definitions_from_object (USD::Prim)
  • get_prim_parent (USD::Prim)
  • get_variant_selection (USD::VariantSet)

Arnold and USD compatibility information

Bifrost 3.1.0.8 works with the following:

See Maya USD, Bifrost, and Arnold compatibility for more information.

Bifrost content created from the procedural graph can also be rendered with Arnold for Maya (MtoA) version 5.3.0 or later. The most recent version of MtoA is recommended for the latest features, bug fixes, and performance improvements. See Bifrost for Maya Compatibility for information about compatible versions of Maya and Arnold.

To get the latest Arnold for Maya installer, visit the Autodesk Accounts portal.

The first version of Bifrost that introduced Bifrost USD is 2.4.0.0. Versions of MayaUSD (available on GitHub https://github.com/Autodesk/maya-usd/releases) that use the same USD version as Bifrost are compatible with Bifrost USD. Older versions of MayaUSD can be installed alongside Bifrost, but Bifrost USD functionality will not be available.

Backward compatibility

Bifrost 3.1.0.8 introduces changes to the SDK. As a result, custom C++ code should be modified and recompiled.

For the complete list of changes to the SDK, see the Bifrost SDK Release Notes.

Changes in detail

What's Fixed in Bifrost 3.1.0.8
Aero: particle emission is not smooth when trail_curve_samples is above zero

BIFROST-13535
Node Library: create_smooth_trail supports velocity, user properties

BIFROST-13289
Simulation: Bifrost Memory Pools can deadlock

BIFROST-13510
Geometry: subdivide_mesh point tags transfer is slow

BIFROST-13700
Node Library: set_geo_property_data does not work with extracted geo properties

BIFROST-13575
Interaction: Crash when deleting a port in the graph editor

BIFROST-13479
Interaction: Making connections in a separate graph causes a simulation graph to evaluate needlessly

BIFROST-13180
Interaction: Quick create nodes should not have auto-outputs so that auto fan-in can work

BIFROST-13540
Interaction: String port order is swapped when copying and pasting nodes inside a compound in Bifrost Editor

BIFROST-13491
Migration: BOSS quick-creates refer to old namespaces

BIFROST-13574
Interface: Outdated links to AREA on Help menu

BIFROST-13551
Maya Plug-in: Multiple evalManager invalidations called when referencing a bifrostGraph with Echo All Cmds on

BIFROST-13480
Maya Plug-in: UV indices order is not preserved when importing mesh with incomplete UV set

BIFROST-13769
SDK: Provide TypeRegistry from Amino::Library

BIFROST-13631
SDK: RuntimeServices logging with new Message class used by TaskNotifier

BIFROST-13550
Maya Plug-in: ESC termination and Cache Playback do not work together

BIFROST-13247
Maya Plug-in: Regroup closure management for async

BIFROST-13666
Guided liquids: when the inheritance speed is greater than 1, the liquid will collapse downwards.

BIFROST-13484
Liquids: Adaptivity turns off with guided liquids

BIFROST-13500
Liquids: Guided liquids not splashy enough

BIFROST-13497
Liquids: Optimize computation of guide volume

BIFROST-13499
Liquids: dampen_guide_velocity_influence should not be influenced by normal colliders

BIFROST-13509
Liquids: issues with precompute compounds for guided liquids

BIFROST-13649
Ocean: Crash with nullptr reference in Ocean C++ operators

BIFROST-13778
Liquids: Domain suddenly fills entirely with liquid with rescaled surface tension

BIFROST-13385
Compiler: resize_array should conditionally clone the array if the new size is different only

BIFROST-13662
Interface: Graph Editor window performance overhead during playback

BIFROST-13259
Maya Plug-in: BifrostGraph Topology Evaluator error on input attributes when Maya Cache Playback starts

BIFROST-13419
Maya Plug-in: Load Bifrost referenced graphs

BIFROST-10362
Node Library: update_cache, update_cache_if

BIFROST-13368
Rigging: Big performance drop during control manipulation

BIFROST-11942
Rigging: Optimize translation table

BIFROST-13343
Rigging: Replace feedback port based caching with new cache nodes

BIFROST-13369
Node Library: deform_onto_mesh_UVs

BIFROST-13639
Node Library: wrap_deform_by_mesh & wrap_deform_by_points

BIFROST-13638
Interface: Ability to paste node path in search and navigate

BIFROST-13671
Interface: Add reference icon to the search items in the drop down menu

BIFROST-13625
Interface: Better Frame/Zoom when navigating Node search

BIFROST-13590
Interface: CTRL/CMD+F Hotkey for Node Search

BIFROST-13643
Interface: ESC should disable the spotlight on the found node

BIFROST-13626
Interface: Faster node search with large graphs

BIFROST-13632
Interface: Node Icons in node search

BIFROST-13650
Interface: Node search filter "Skip Referenced Compounds"

BIFROST-13112
Interface: Node search list separated by path

BIFROST-13107
Interface: Node search lists recent searches

BIFROST-13106
Interface: Node search right click on node "search for Node Definition"

BIFROST-13111
Interface: Node search steps through results and frames/navigates to them

BIFROST-13108
Interface: Node search widget

BIFROST-13105
Interface: Nodes not found in search are dimmed

BIFROST-13109
RBD: Age property on instances

BIFROST-12764
RBD: Collide ignore pair tracking slow with overlapping convex decomposition

BIFROST-13487
RBD: Colored instances for diagnostics

BIFROST-13720
RBD: Constraint influence extra properties fails with "position"

BIFROST-13579
RBD: Emission of rigid bodies from existing simulation into a new simulation

BIFROST-13364
RBD: Hard constraint

BIFROST-13131
RBD: Hard constraint physics support

BIFROST-13630
RBD: Incomplete constraint influence causes missing output

BIFROST-13633
RBD: Instance pre-fracture constrained objects

BIFROST-13218
RBD: Output instances before simulation start

BIFROST-13742
RBD: Pre-oriented instances are not simulated correctly

BIFROST-13319
RBD: Remove bake_instanced_geometries from browser graphs

BIFROST-13693
RBD: Rigid body emission

BIFROST-13363
RBD: Setting point_size other than 1 on rigid instances makes all rigids disappear

BIFROST-13788
RBD: Sphere method explodes with ignoreOverlap pair tracking method

BIFROST-13695
RBD: Sudden explosion with ConvexDecomposition mode when overlap_pair_tracking is enabled

BIFROST-13512
RBD: Support for copying simulator when nontrivial point_scale used

BIFROST-12729
RBD: Unique pairs with sample_and_constrain does not constrain all shards

BIFROST-13734
RBD: create_rigid_bodies method auto-port for arrays

BIFROST-13678
RBD: Improve browser graphs for vp2 performance issues

BIFROST-13681
Viewport: Automatic geometry cache to prevent unnecessary translation during playback or edits

BIFROST-13237
Viewport: Better and faster support for instance colors

BIFROST-11332
Viewport: Level sets with standard surface are too bright and specular doesn't match

BIFROST-13682
Viewport: NanoVTT levelset rendering is unstable

BIFROST-13672
Viewport: Put GL viewport into "safe" mode

BIFROST-13667
Viewport: Standard surface is too bright and specular doesn't match

BIFROST-13294
Viewport: Update explode_geometry to use instances instead of merge_geometry

BIFROST-13663
Volumes: Add operator[] to Amino vector types

BIFROST-13598
Publishing: InOutTarget data is lost after republishing

BIFROST-13258
Rendering: Crash deleting bifrostGraph from outliner during an active render session

BIFROST-13724
Rigging: Building separate rigs from two graphs with identical names breaks first rig input connections

BIFROST-13727
Rigging: eye_module needs joint position tweaking for skinning

BIFROST-13521
Rigging: eye_module skews on non-uniform scaling & parent rotation

BIFROST-13522
Bifcmd: Fails when a bad json is in the compound directory

BIFROST-13578
Bifcmd: final_mode_switch should behave like in Bifrost + Maya

BIFROST-13601
SDK: Amino::Any must call destructor on payload after move

BIFROST-13645
SDK: Amino::Optional (same as std::optional but ABI safe)

BIFROST-13641
SDK: Public Amino::ConstLibrary in AminoSDK lib

BIFROST-13612
USD: Bifrost procedural is rebuilt when selected in the outliner

BIFROST-13592
USD: Node to get prim parent

BIFROST-13858
USD: Node to get the selected variant

BIFROST-13820

Was this information helpful?