We’re delighted to introduce Fabric Engine 2.4. The headline features for this release are:
Kraken (transportable character rigging)
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
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
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.
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).
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”)
We have of course fixed several bugs, particularly in Fabric for Maya, Alembic, and Blocks.
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!
I have long been looking for a Remesher Tool for using in my pipeline. So far I have not found anything better than this free program https://github.com/wjakob/instant-meshes . I compiled this program as Fabric node, and added all the basic functions (except Guides). And I also have builded two nodes to make symmetry asset. The first node deletes half of mesh, the one other rebuilds the second symmetry half after remeshing process. This program works pretty fast, but unfortunately not perfect, sometimes it admits the open holes in difficult places (I noticed the same problem in exe version).
But in general this tool is useful for me, it creates a regular mesh and can be useful for procedural assets.
PS: I also noticed that Canvas standalone computes much faster than the version under Maya
upd: v2 is actual. I have added checking of empty input arrays to avoid a crash if inMesh is disconnected
Getting your assets and scenes into a runtime like Unity or Unreal can be time-consuming, primarily because you lack control over most of the import process. Fabric Import Patterns give you a reliable, repeatable and customizable way to prep scenes so you can spend less time and effort on importing data, and more time on working with your runtime of choice. In fact, Fabric Import Patterns extend beyond importing into Unity or Unreal. You can also use them to get the same scene data into a web browser using three.js or to build procedural tools for applications like Maya.
Let's have a look!
Import Patterns are created inside of Fabric Engine and consist of rules for processing data. These rules are created by you within our visual programming system, Canvas. For example, you might wire up an Import Pattern to simplify incoming geometry by reducing the number of polygons or discarding elements that are hidden from view.
As you use an Import Pattern to read and process multiple files, you can improve how it works as you go. You can tweak the rules and see the results interactively in Fabric, as well as in your target application or game engine editor. One pattern will handle multiple assets and multiple application targets.
The possibilities for what the Import Pattern might be used for are kind of mind-boggling. Take animation as one example. In the video below, we added motion to a Rhino3D model within Maya and then used an Import Pattern to give a more interesting 'exploded' version within the target environments.
Import patterns do not differentiate between converted source data and procedurally generated data. This means you can mix and match approaches as you prepare your data. The video below shows a procedural 'greeble' effect and an automated labelling system.
Combining the various Import Patterns together leads to a completely rule-based, procedural data pipeline from source application through to multiple runtime targets.
After integrating Fabric into Unreal Engine, we just had to do the same for Unity. This is still work in progress but we aim to start a closed beta program in Spring 2017.
You decide where data goes after it is processed in an Import Pattern. We have focused on real-time data prep here but your target application might be Maya or maybe an in-house tool. In this next video you can see Import Patterns being used within Maya - firstly with the same workbench demo, and then to build a procedural, interactive tool.
Import Patterns let you create an assembly line that perfectly prepares scene data for your favorite games engines and applications. We’ve used a lot of CAD data in these examples, but Import Patterns can also read/write Alembic, FBX and many other formats (you can also extend with your own). Import Patterns can also be used to build powerful procedural tools within Maya.
The Unreal part of this work will soon be made available to our beta testers. If you would like to test the current beta for ‘Fabric for Unreal’ then please see this blog and this one for more information on how to apply.
This project is still in development, we intend to start a closed beta in Spring 2017. If you'd like to register for the Fabric for Unity beta, please mail us with the following:
We will contact you once the beta is ready to go.
This project is still in development, we intend to start a closed beta in Spring 2017. If you'd like to register for the Fabric for three.js beta, please mail us with the following:
We will contact you once the beta is ready to go.
Import Patterns for Maya will be available in the Fabric 2.4 release later this month. If you're impatient then you can get them later today in our daily builds.
I want to share my new experiment. It's not the complete tool, it's just the result of my "Fabric" + "Cpp" training.
I set a goal to study how much Fabric is ready for fluid simulation. In general, except for some shortcomings, it is quite ready.
At this moment I'm studying different solvers and libraries, and that is one of them.
I like this source code and this conceprtion, only water, with foam, bubbles and spray. But unfortunately it is not full multi-threaded, but uses OpenCL for some tasks. I will make update as soon as something changes in the source code. I share all sources with example scene.
Big thanks to Ryan Guy for sources https://github.com/rlguy/GridFluidSim3D , and he explained some of the issues, and made some fixes.
Also thanks to Oleg"Kaiser of CG"Bliznuk for consultation
upd: v.3 file is actual
I want to share the first build of my Boolean Tool extension. This extension based on Carve library, compiled and assembled for Fabric. This version supports general boolean modes and can transfer a few basic attributes such as 'uvs0', 'normals', 'velocities', 'vertexColors', 'MeshID'. Please report me about problems.
Many thanks to Oleg"Kaiser"Bliznuk, he gave me a lot of help.
I share my extension. This is my porting of aaOcean simulator + my attempt to implement Vector Displacement deformer(in tangent space). I've always wanted to have a vector displacement as a standalone tool and Fabric helped me to do it. Please let me know if you have problems with the tools
ILM posted a video about how we created the crowds. Hybride's contribution can be seen at about 3:30 into the video :
©Copyright 2017 Fabric Software Inc. All rights reserved. | Privacy