Sunday, 24 August 2014

Delta Mush

I've been really busy the last couple of months and things were quiet on my blog. In the meantime I started getting into the Maya API and jumped on the Fabric Splice train. I have a couple of nodes that I want to demo and I will start with the first deformer that I ever wrote. A prototype of the Delta Mush deformer:

The deformer is based on the Delta Mush deformer in Voodoo. You can find more detail about it in this Siggraph paper.
The paper explains it functionality and beside the information they give you all you need is the math to calculate everything.
Maya does not hava a Laplacian smooth deformer so I had to incorporate it in the node. Thanks to Olivier Dionne for sending me a link to this document which contains the necessary calculations for the smoothing.

The node is written in Fabric Splice for Maya. The good thing is that the deformer does not depend on Maya and can be used in any of the Splice implementations (Softimage, 3DS Max among others).
In this thread you can find a lot of useful info on the math behind this and also how to get some of the point data from the mesh. It is great that Roy Nieterau shared it with everyone.

Splice is still under development and even though some things are missing it is already an amazing tool. Especially because of its cross platform compatibility. And how easy it is to do some low level stuff really fast. I am also looking forward to Kraken, an open source cross platform rigging tool.

The model used in the video is downloaded from A great model and the site is a great resource for everyone.

The video below is showing the deformer in action. I just added some bones and bound the mesh using one influence per vertex, without any weight painting.

Delta Mush Deformer in Maya from Armin Halac on Vimeo.


  1. The results are looking great. Keep up the great work Armin!
    Great to see the stuff I shared was of any use to you.

  2. Thanks Roy. Your version is awesome too! And there is some great stuff in your other videos.
    Your post on the discussion group was very useful. I went there to ask how to get the tangents because there was no getTangents function and I found a lot more useful info.
    Thanks again!

  3. Replies
    1. I don't want to release it yet. There are probably more people like me who want to create it by themselves and I don't want to spoil it for them.