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.
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.
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.
The three principal components of the human shape (credit: Loper et al. 2015)
This month I complete one year teaching at UFSC, in celebration of this I wanted to share the work of some of the students in one of my classes: 3d Animation I or EGR7249. This is the first contact of the students with the art of 3d animation in the course. Congratulations to all students for the effort and great work.
This last job I’ve participated in was of a very rare breed. Animaking was bold enough to mix a bunch of different techniques, namely live action, miniature models, stop motion, cg and post… phew. It all blends into a nice view of the Aircross automobile running through the atacama desert…
I was a small part of this great effort, running most particle sims. It was very nice to work with some old friends and meet a few more nice people.
Back from the metropolis! This past week I have presented a workshop on ICE for 40 people at Melies school of cinema and animation, in São Paulo. Those who attended got a clear idea of what a interactive visual programing envoiroment like ICE may bring to the table in the context of animation and effects. We also stablished a panorama of most type of sims that exist in this, and other plataforms, trying to understand the pros and cons of each. Besides this overview we got into the guts of all the math behind ICE and some things those who are not aquinted with the tool get a hard time with (like data’s type and context). To finish it all off tornados and explosions were simulated, good times!
Motion Tools is a small collection of tools that aims to aid Motion Graphic work being created inside Softimage. It does so by providing many ICE compounds and partially abstracting the ICEtree construction processes. It eases the creation, procedural animation and simulation of many many objects or chunks of geometry.
Motion Tools is a small collection of tools that aims to aid Motion Graphic work being created inside Softimage. In this latest release the capability of controling polygons and polygon islands with particles was added. Therefore enabling one to control this elements with regular ICE nodes, or Motion Tools’ compounds.
Some high priority bugs and workflow enhancements were tackled, although, due to time constraints these improvements were not akin to the initial intention. I hope this still may prove useful to some.