Mesh Deform Modifier
Posted in Development by brecht
In some early deformation tests it became clear quickly that rigging our fat characters was going to be a challenge. For skinny models bones correspond well to the different parts of the body, but for fat models they do not, and there is a lot of overlapping influence. With a lot of corrective extra bones and shape keys we might have been able to get reasonable deformations, but part of this project is of course to tackle these problems head on, instead of having our artists waste time endlessly tweaking the deformations! So we decided that we needed a mesh deform modifier, as detailed in Pixar’s SIGGRAPH 2007 paper.
A known trick in rigging is to use lattices to e.g. get smoother arm deformations. But lattices are restricted to have vertices in a regular grid layout, which doesn’t fit an entire body shape, whereas with a mesh deform modifier a mesh with arbitrary shape can be used as a lattice. This way we can make the armature deform a low poly cage mesh, which in turn deforms the actual model. Using a lattice between the armature and the actual mesh smooths out the influences from multiple bones, and so gives better deformations in difficult areas. Of course the result of this is not always perfect, and we still need corrective shape keys (but fewer). Such shape keys can also be made on the cage mesh, which has much fewer polygons. In addition the vertices of the cage mesh could be used for e.g. facial deformation controls.
How this modifier integrates into the rigging system is still being worked out. For example hands and fingers are being deformed directly with the armature modifier, and blended with the mesh deform modifier using a vertex group. This however conflicts with the dynamic binding that was added to make shape keys on the mesh work, so we are working on a better way to blend modifier deformations.
A .blend file with the chinchilla using mdef can be downloaded. Note that this is not a complete rig, the deforming bones can be manipulated directly, but the high level controls for this model are not finished. Also this requires a very recent blender SVN version to work (preferably built after this blog post).
For further information read the mesh deform release logs.
There have also been various improvements to make b-bones squash and stretch better, a pole target for inverse kinematics, and easier weight painting for the colorblind.
November 14th, 2007 at 9:01 pm
This is great stuff, I wish I had this tools when we did the rigs for Plumiferos :)
Congratulations to all you guys !
November 14th, 2007 at 9:06 pm
This looks great!
I’ll have to download the latest SVN release now, to really play with it..
November 14th, 2007 at 9:17 pm
Wow…Nice work peach team :)
I am always amazed with the speed of the Dev’s and the constant progression in Blender.
keep up the good work guys :)
November 14th, 2007 at 10:18 pm
I’ve died and gone to heaven. Awesome work Brecht :)
November 14th, 2007 at 10:21 pm
WOW, just WOW!
November 14th, 2007 at 10:41 pm
Last year as I read the paper, I wondered what that was good for. Awesome work Brecht, and also thanks to the Pixar devs for publishing this cutting edge technology. Now to test this stuff on the Stop Starring examples.
November 14th, 2007 at 11:00 pm
This looks very interesting.
Thanks to the coders and Pixar! =D
November 15th, 2007 at 12:13 am
Very nice. Its good to see that you’re not skirting around problems by writing up hacks that leads to crappy software. Keep up the good work!
November 15th, 2007 at 12:42 am
Great work, a real boost to the rigger arsenal. Together with the Quaternion skinning it should be a treat to rig those fat boys.
November 15th, 2007 at 1:21 am
Teeheh, “easier weight painting for the colorblind” ;) Now, I don’t think the colorblind should be making 3D at all ;) but anyway, nice stuff here.
November 15th, 2007 at 2:34 am
Dank je wel, Brecht!
let’s “checkout” the SVN now! :)
November 15th, 2007 at 2:47 am
“Now, I don’t think the colorblind should be making 3D at all ;)”
why not? :) i am slightly color blind (but i didn’t have problems with the colored blender weight painting). i don’t think riggers or pure modelers necessarily have to see colors. …and black&white animations can be nice too. :)
November 15th, 2007 at 3:10 am
Wow! I like it!!!and a big THANKS to all in Peach!
November 15th, 2007 at 9:20 am
Sounds great! At an internet cafe right now, so will obviously try it out when I can. I’ll understand it more when I give it a go, but where does this sit with the infamous crazy space (cs) issue? Will it almost eliminate dealing with cs? Are you still planning to write the inverse catmull-clark code to help with shape key editing? Like I said, I’ll try this new modifier when I get the chance, (on high poly displacement meshes too, let you know of any issues) but I’m keenly interested in the cs problem to the point where I’ll consider donating money to an external coder if there is enough interest. Rock on Peach! Still wishing I was there…
November 15th, 2007 at 10:57 am
Snizzy said: “Now, I don’t think the colorblind should be making 3D at all ;)”
Huh… so I shouldn’t be making 3D at all, Snizzy? Interesting…
November 15th, 2007 at 1:14 pm
Snizzy’s comment confused me a bit, he did put a wink at the end but still, the comment was just wrong.
The mesh deform modifier is really great, It looks like every week someone decides to add another feature, things are pretty much popping out of nowhere :D
ill be nr. 10.000 to say this.. but Blender 2.50 will be amazing.. a release that will be remembered for a loooong time.
November 15th, 2007 at 1:33 pm
this is awesome guys your are life savers.
that thing with 3d skining, it would by nice when you can also change the skin
with a vertices’s number list, mainly used in maya xsi. then you have a bit more control.
ps. only the mesh deformer is a great benefit from this project
November 15th, 2007 at 2:59 pm
Woah!!!
Total respect to Brecht and a thank you to Pixar for making the research available to public eyes.
November 15th, 2007 at 4:37 pm
The Mesh Deform Modifier looks really good, as does the Pole Target.
By the way, I love the way new features are documented in the change log at blender.org.
Great work!
November 15th, 2007 at 11:03 pm
I’m ok with doing 100´s sape keys corrections, I kind of like it ^_^ it allows precise point control.
I’ve read the pixar withepapers refering to armonic deformations when they were mentioned early on and… well I don´t know :|, it might be actualy easier or faster make the shape keys…
But still, I´ll give armonic´s def. a try ^_~
November 16th, 2007 at 5:30 am
“Huh… so I shouldn’t be making 3D at all, Snizzy? Interesting…”
Cessen is color deficient like me! That’s sick, love it when a pro is cool like that.
And great job Brecht! Thank you for the job well done! ^_^
November 16th, 2007 at 11:34 am
rogper: you’ll be happy to know that there is a new little feature to make corrective shape keys more precise now, too. In ipo drivers you can now compare the rotation between two bones, and have that drive shape keys. It takes into account all rotations, including twist. I’ve been using it quite extensively in our rigs for our corrective shape keys. Of course, it’s not a silver bullet. There are still times when you want to use stretch to’s or a simple rotation axis.
superkoop: yeah, right on! Color blind for teh win! We’ll take over the world! Bwa ha ha! :-P
November 16th, 2007 at 3:55 pm
impressive. this is the coolest thing since driven shape keys
November 16th, 2007 at 10:21 pm
Ok, so we now have this great modifier.
Since it already does proximity tests and weighting, would it be possible to branch it out to another modifier that does attribute transfer ala Houdini or GATOR from Softimage?
I’m too lazy to find out how to use commiters lists
November 17th, 2007 at 8:11 am
where can i get a svn build?
…i think campbell worked on removing the face select mode? is this already commited? face select mode is one of the things i always really disliked about blender.
November 20th, 2007 at 7:39 am
This is amazing! I use XSI, and I’ve been hoping this technology would come there soon, but now that blender has it, wow! As cool as it is technically, it really frees up the animator.
I think the only thing that would put this to shame, is an animation system that worked like ZBrush’s transpose. Now that would be flexible.
Thanks you guys, I too am looking forward to the Intel Mac build.
Kudos!
November 20th, 2007 at 2:07 pm
I NEED SVN BUILD.
November 21st, 2007 at 3:06 am
I have a Chinchilla.
Respectfully I say, Your Chinchilla model is ugly. Please redo the head, face, as it is unappealing.
Also, Chinchillas are not fat. They are “fur fat”. there is a subtle difference.
November 21st, 2007 at 12:48 pm
Hello HelloKitty,
First, we from the Peach team are worried you’re underfeeding your chinchilla. For the Chinchilla brevicaudata it’s not that uncommon to have a little fat.
http://www.distrivictoria.com.ar/images/otras_mascotas/chinchilla.jpg
Second, it’s true he doesn’t look like a young Haley Joel Osment, but we like to give everybody a chance… even the ugly ones.
Third, it’s better…. no, wait… uhm… something with cheese and soap…. but I forgot…. damn….
November 21st, 2007 at 11:20 pm
That is a wicked tool. Thanks Brecht for your time.
I’m never going to fear fat/stumpy characters again!
December 3rd, 2007 at 8:15 pm
sorry for this stuped question, but
how do I make the cage transparent??!!
December 11th, 2007 at 8:21 pm
Awesome… I´ve been waiting for this since Plumifero´s project started….
January 1st, 2008 at 2:43 am
Am I missing something or is there a build for os 10.4 ppc somewhere? I’d really love to learn these new features. Great job you guys! Thanks for all the features and hard work!
January 1st, 2008 at 2:45 am
Oh and unlike some others I dig the chinchilla. Be Blessed!
February 12th, 2008 at 9:52 pm
Fine job