Jump to content

Blender: Automatic Rigging Tool 0.8


Recommended Posts

Automatic Rigging Tool

Beta v. 0.8


This tool automates the rigging/weightpainting of any mesh (or part of mesh) with a reasonably linear primary axis.

Using the Tool



1. Import the mesh that you want to rig

2. Enter into edit mode and select two vertices (or connected clusters of vertices) on opposite sides of the area that you want to rig.

3. Run the tool by clicking: Mesh -> Scripts -> Rig Mesh

4. Choose your Settings:



Base Name:

If you are adding sequentially added bones, enter the name of the first bone under here, hit enter, and then click "Update Bones". This will update all bones to use the Base Name. For example, if the base name is Tongue01.L, the first bone will be generated as Tongue01.L, the tenth bone will be Tongue10.L.


Number of Bones:

Choose any number of bones to rig, between 10 and 100.


Base Weight:

Choose the base weight that will be applied to each bone.


Weight Bleed:

How much should each bone bleed into the next bone's region? The number here represents the area, as a multiple of the bone's base area, that it will bleed into. A number of 0 means that each bone will be confined to its region for no overlap and very abrupt transitions between bones.


Replace Vertex Groups:

This applies only to the bone groups being painted. Should these groups be removed entirely prior to weightpainting, or should the pre-existing weightpainting be retained in addition to the new weightpainting.


Don't Paint Edges:

This applies to the selected vertices on the Start Edge only. If selected, the weightpainting of those vertices will not be modified. Note, this does not apply to selected vertices on the End Edge.


Clean Vertices Before Weighting:

This removes removes all pre-existing weight-painting from any vertex that is weightpainted by this tool.



Each bone that will be weightpainted has a text field containing the bone name that can be edited as you see fit. Note: Clicking on "Update Bones" will erase any custom changes that you may have made.



Each bone that will be weightpainted has an "Area" setting controlled by a slider. This controls the area, relative to the other bones, that will be assigned to this bone.


5. Once you are happy with your settings, click 'Done'

5.a. A new menu will appear, 'Select the Start Location'

6. Click the button with the coordinates that should represent the start. The other button will represent the end.

7. Test your new rigging and enjoy your newly rigged mesh.



Advanced Techniques




Since the tool only works for linearly shaped meshes, how do you make it work for something like an upper body?


1. Tab into edit mode

2. Select the vertices that you wish to rig

3. Hit 'p' and select 'separate selected'

4. Tab out of edit mode and select the new mesh

5. Rig the mesh as before

6. From object mode, select the new mesh, then shift-select the old mesh

7. Hit Control-j to join the two meshes

8. Tab into edit mode

9. Hit 'a' until no vertices are selected

10. Hit Control-Alt-Shit-m

11. Hit w and select 'Remove Doubles'







1. Extract mesh_rig_mesh.py from mesh_rig_mesh.7z

2. Move mesh_rig_mesh.py to your \.blender\scripts\ folder.


Link to comment
  • 5 months later...
  • 4 months later...

I'm planning on working on an update to this tool sometime in the *relatively* near future.  This version was more of a proof of concept than a fully featured flexible tool.  I'd like the next version to be a bit more robust, with additional options and functionality.


So are there any feature requests, feedback, bugs, etc that I should be aware of?


Thanks in advance

Link to comment

Hi Gerra6,


you were recommended to me as an expert in rigging. Would you consider adding templates for options to create a rig for a certain game (bethesda stuff, mmd etc.) since bone names, skeleton structure, IK etc. can differ, and thus not work.

Link to comment

At the end, it is about replacing a body. I would extract a mesh from whereever OR in the not so far future, 3D-scan someone, and re-rig it to fit into a game or MMD or whatever.

I see the main problem in the incompatibility of armatures and their controlling elements.  The next problem: I'm quite a noob :-)

Link to comment

Well, depending on how much of a noob you are, you may need to read a number of tutorials to learn your way around Blender, importing and exporting nifs, and the like.


Assuming that you can import/export a nif...


If you are converting a nif from one game to another, you will need to convert the baseline pose from one game to another.


For that, you can use Pose Converter




Once the poses match, you'll want to weightpaint your mesh.


If this is going to be a replacement body style, then you generally want to copy the weightpaint from an existing mesh, 


For that, I'd recommend this script




You will also need to UV wrap the mesh.  If you want to convert a new mesh to use an existing UV map, I'm working on an automated UV copy tool (currently in limited beta) that should be released soon.


If you want to convert clothing from one mesh style to another, one method is to generate conversion lattices and use them.




Note: I'll have a big update to all of my tools in the next couple of weeks that should resolve some lingering bugs and improve the overall quality of copies.

Link to comment

Thanks you very much!

I tried some simple rigging in blender, can import MMD and nif. I ran some animations on MMD models with corresponding VMDs (they won't import rihts if system fonts are not set to Japanese - "bone names issue"). And even then, there ARE issues with the physics of  hair and softbodies which works some imported and does not for the others. As if the import tool would miss or misunderstand something.


I have the feeling it is like a Pascal-to-C converter. It might seem to be quite straight forward in design. However, the results can be far from what is expected.

Link to comment

For animations, pose converter can theoretically convert animations from one armature to another.  However, the quality of the results depends on how similar the *purpose* of the matching bones are.  So, while Pose Converter might do an excellent job converting keyframes for the upper and lower arm bones of a given armature, it might fail utterly when it attempts to convert finger keyframes if the fingers have different numbers and distributions of bones.


For meshes, you basically need to do three things in Blender to convert a mesh from one style to another (say, imported obj file with no UV Map, no material, and no vertex groups to Oblivion)


In order to animate the mesh, you need two things.  You need an armature that can be animated parented to the mesh (this shows up as an armature modifier in the mesh's button panel).  You also need vertex groups (weight painting) on the mesh that tells each individual vertex how much influence a given bone should have on that vertex's position.


The nif import tool can import a skeleton and parent it to a selected mesh, so rigging with a pre-existing armature is fairly easy.  Weightpainting can be tough, but my scripts should make that a bit easier.


To get a material for a mesh, it is generally easiest to copy an existing material from an existing mesh.  This is fairly straightforward and shows up in most Blender tutorials.  The hard part is wrapping your UV to use an existing texture.  As I've mentioned, I'm working on a script to automate this process, but it is not yet ready for wide release.

Link to comment


This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use