Home Youtube GitHub

Can mgear do head stretching?


Can mgear do head stretching and squashing like the kayla rig ? How do I set it up?



Mgear by default doesn’t have any component to do this by default.

In this tutorial series Josh Sobel explains how he did the stretching and squashing of the face.

If you haven’t seen it, you can use ‘squash_01’ component of mGear. Take a duplicate of your face and use two squash components one upwards and one downwards. Now build the squash components and skin the squash joints to the duplicated face as you see it fit.

make two controls which are parented to the head controls(fk possibly) and match their orientation with the squash control. Connect the upper squash control’s translates with the head top control and the same for lower squash controls.

Now blend shape the duplicates face with the original face and put the value always at 1. Just make sure that the actual squash is not under the global control so that you don’t get any double transformations. You can use the post custom scripts to make sure every thing is done while building the guide and it wont cost you much time every time you have to build the rig.

Hope that was helpful.


thanks, gonna need some visual aid for this explanation lol. thanks though.



Here is a maya file with rough face and skining (actually bad :P). But you should be able to understand the functionality. Sorry I couldn’t provide a video file explaining this. Hope this maya file helps.



Thanks a lot, greatly appreciate the effort and time you put in it!


You know any resource to help me with the post custom step to get the blend shapes back up? based on your explanation, it sounded feasible.


If its a pre made blendshape and does not have any deformer affecting it (like a smile expression) you can export a .shp file from shape editor.

You can import the .shp using the following code:

pm.blendShape(“testBshp”, ip = “yourpath/name.shp”)

testBshp is the name of the mesh which I need to add blend shape.

If you are looking for blendShape which has deformations like joints follow this process.
Export the sin cluster as gSkin or jSkin for the mesh which is deforming and connected to the main mesh.
For example let’s assume it as head_tgt . The main mesh name is head.

in the pre custom steps after you import the model duplicate the mesh which needs to be deformed (in this case head)

pm.duplicate(“head”, n = head_tgt)

Later in the post custom steps import the gSkin or jSkin of head_tgt and import it.

Now create a blendShape between head and head_tgt
pm.blendShape(“head_tgt”,“head”, n = “bShp_head”)

Also to need to connect the controls of head_tgt and main file.

Its a long process but its better than doing it manually every time you rebuild your rig.

Hope you understand what I tried and explained