Fabric 2.4 now available

January 20, 2017

We’re delighted to introduce Fabric Engine 2.4. The headline features for this release are: 

  • Kraken (transportable character rigging)
  • KL Namespaces
  • Curves
  • Fabric for Maya performance optimizations
  • DrawText extension
  • UI/UX improvements

Our own Eric Mootz has put together this video tour of Fabric 2.4:


Kraken is now included by default with Fabric 2.4. Kraken is an Open Source character rigging solution for Fabric Engine that allows you to use and define rigs and solvers that produce identical results across different animation applications.

Some advantages to using Kraken include:

  • Allows portable rigs that give consistent results across Maya and other DCC applications
  • Supports development of custom rigging tools with no dependency on Maya and other DCC applications
  • Enables efficient evaluation of highly complex rigs inside Fabric Engine
  • Easy to use Biped workflow
  • Includes node-based Kraken editor
  • Flexible, customizable, and extendable
  • Open Source

A Kraken solver running in Canvas

One of the more significant features of Kraken is the quick Biped workflow. We have fleshed out our built-in biped rig components and now have menu items to quickly create pre-built Biped guides and generate rigs from those guides too.

Kraken biped rig running inside Maya

Check out this blog post for much more about what Kraken is and this forum post for a series of introductory tutorial videos.

KL Namespaces

Namespaces are now supported in Fabric Engine, helping to organize naming in large Fabric implementations. KL Namespaces work in the expected manner: providing the ability to avoid collisions of names in extensions by limiting their scope.


Curves are now natively supported in Fabric Engine, avoiding the need to write your own code to create and use various curve types and shapes.

Using curves to procedurally generate a pattern

Curves can be defined as NURBS up to degree 7 (open and closed) but will likely most commonly be used as linear, cubic or Beziers. Alembic and Maya Curves are properly handled. Curves can be drawn in the viewport (with curvature, normal and tangent attribute support) and several utility methods are provided to set curve length or get by percentage.

Using Canvas to generate grass with curves

There are samples showcasing curves for Canvas standalone and for Fabric for Maya in the release.

Fabric for Maya performance optimizations

We have optimized how fast Fabric Engine runs inside Maya. In general cases we have seen a speedup of 6x to 8x for most Canvas Maya nodes (we added a single entry point in the Core API for all argument conversions and now use direct memory access instead of traversing the data members).

We have also added a new node – ‘FabricConstraint’ – which combines in one node the position, orientation, scale and parent constraint functionality available in Maya. This gives a signficant peformance improvement versus the generic node. For advanced users we added ‘CanvasFuncNode’ and ‘CanvasFuncDeformer’ nodes which are the equivalent of the regular CanvasNode and CanvasDeformer but faster (they only expose a KL Function editor instead of a graph).

DrawText extension

We have also added useful features like the Text extension. Now you can draw text values in screen space to add on-screen information to your graph’s output. You can also use this feature to display information in 3D space, using the attributes of a Geometry such as the vertex positions of a mesh or a curve. This is a key information when creating more complex graphs and it really helps to visualize abstract data directly in the viewport. Check the samples available in the Samples/Canvas/InlineDrawing folder.


We continue to make improvements to our UI and workflows. In this release, we have cleaned up and polished the user interface, unifying the styles with a common style sheet. On top of that, the Fabric style can now be overridden by a user-defined configuration file. This kind of work will be ongoing, so please post in our forums if you have any suggestions!

Less clutter and more consistency in the Fabric UI

We also include the ability to modify the viewport render options and added and improved workflows in the GraphView such as:

  • Zoom Functionality with the ‘Z’ shortcut
  • Auto connection nodes (“C”)
  • Direct port renaming of nodes by double clicking on the port fields themselves
  • Increasing the threshold to create connections to make attachments easier
  • Exporting presets properly respects the GUIDs
  • Reveal in explorer and expose of the full path of a preset
  • Better tracking of presets usage in the tab search

Finally, the Diagnostic window is better at exposing and highlighting errors.

General improvements

We have of course fixed several bugs, particularly in Fabric for Maya, Alembic, and Blocks.

As always, the full details are in the Release Notes and you can download Fabric from the Get Fabric page. Here are the Kraken Release Notes.

Don’t forget that the Fabric Forums are a great place to share what you are doing and learn from others in the Fabric community. We pay a lot of attention to the suggestions and challenges reported there and hope that we are doing a good job in reflecting that feedback as we continue to improve the Fabric platform.

Wishing everyone a successful 2017!

Team Fabric