Fabric Engine and a Void in 3DCC Machine Learning

cg news

About three weeks ago Fabric Software abruptly ended the development of Fabric Engine without any following announcements. In this second post of a two-post series, I’ll try to go over why Fabric was a great fit for Machine Learning in the context of 3d Content Creation (animation, games and VFX). Bear in mind these are my own personal opinions.

AI, beyond the hype

Nowadays the acronym AI (artificial intelligence) seems to be everywhere. AI cars, AI stealing your job, processing AI in your GPU, and so on… Not unusually you see the buzzword AI alongside stuff that has no direct relation to artificial intelligence, like this tweet in which the WSJ uses VR goggles to depict AI.

WSJ twit on AI, with image of man using a VR headset

VR goggles used to depict the concept of AI (credit: WSJ, Twitter)

Most of the times when people talk about AI, they are really talking about a rapidly developing segment of AI called Machine Learning (ML). Machine Learning is a field in computer science that is interested in techniques that make it possible to program computers with data, instead of using explicit instructions. ML techniques are either based on a statistical approach or a connectionist approach. The connectionist approach is in vogue nowadays, especially a specific approach known as Deep Learning.

Gimme data

Data is what makes ML tick. This data can be of two kinds: labeled and unlabeled. Unlabeled data can be used to find patterns within the data itself. A very nice example of the use of ML with unlabeled data in a 3d content creation setting is the work of Loper et al. (2015). The authors used a dataset consisting of 2000 scanned human bodies (per gender) and, using a statistical technique called PCA, found that they could describe scanned bodies with less than 5% error using only 10 blendshapes. You can experiment with the results of this work in Maya, clicking here.

9 different virtual reproductions of the human body

The three principal components of the human shape (credit: Loper et al. 2015)

Constraint along strand

research and development

In the middle of production I was face’d with something I had not done yet. We had to constraint a bunch of strands to the tip of another strand. As in the time we did not have Syflex for ICE we decided to use ICE’s own strand framework. Good for us it was not hard arranging a bunch of nodes in order to get this constraint going.
All I had to do to share it online was to make it a little more flexible and scale friendly. Here it is hope you like it.

gb Strand along strands ICE compound