So, it’s a magic one click rigging solution?¶
It’s not! It includes many tools to automate and speed up the rig, but the rigging artist’s hand is still required to adjust the bones positions, vertex weights…
Can I sell characters rigged with Auto-Rig Pro?¶
Of course you can. Just include the “rig_tools” + “proxy_picker” addon in the download package, to include the IK-FK snap, picker and other features to animate the character.
What can I rig with it?¶
It’s meant to rig any stylized or realistic character, based on bipeds/multi-peds bone structure: humans, cats, dogs, centaurs, spiders, birds… Here are the available limbs:
Arm, with optional fingers
Wings with feathers, based on arms
Leg, with optional toes
Head, with neck
Chain: Spline IK
Chain: Bendy Bones
On top of that, it’s of course possible to add new bones manually for specific needs (hair, clothes, props…).
The following character presets are also included:
How does the auto-detection (Smart) work, what limitations?¶
It works for biped characters only, the model must be in T-Pose or A-Pose. It detects the feet, legs, spine, arms, fingers position and optionally the facial bones. Depending on the character, some manual correction may be required. The algortihm finds the vertices in the markers neighbourhood, compute the volume, position of each part, then analyze the datas to place the bone according to the standard biped proportions. If the model is too special and does not meet these requirement, you can skip the auto-detection feature and simply place the reference bone manually.
Are asymmetrical models supported?¶
Asymmetrical models are supported by both the smart feature and manual bones edition. By turning off Mirror when placing the markers and X-Mirror Axis when editing the reference bones:
Does it include bendy bones?¶
They’re currently used to handle the neck twist deformation, and for the leg and arms secondary deformers in option, since they’re not exportable to game engines. To export the secondary bones to Fbx, it’s best to stick to the “Twist” or “Additive” mode.
Is it possible to add new, custom bones?¶
Sure, new bones can be added after generating the final rig (Match to Rig). No reference bones can be created for the custom bones, they will remain in the final rig. However new bones are not exported by default, to export them see Custom bones
Is it possible to delete bones?¶
If disabling a full limb doesn’t give you enough precision to disable a specific bone, hide the bones you don’t need (H key) but don’t delete them, it would lead to the addon malfunction. Then just delete the vertex groups of the hidden bones to make them ineffective.
The addon doesn’t install¶
First, make sure you downloaded and installed the correct addon version: for Blender 2.79, Auto-Rig Pro 3.40 must be installed, while for Blender 2.8x, Auto-Rig Pro 3.47 and above must be installed. See Installing the Addons
If it still doesn’t work, you may have installed previously the whole downloaded zip file, instead of the addons files located in the addons folder, in this case it’s necessary to remove manually this invalid installation:
Navigate to the Blender addons folder. On Windows it’s generally located here: C:\Users\YOUR_ACCOUNT_NAME\AppData\Roaming\Blender Foundation\Blender\2.81\scripts\addons
Delete any “auto_rig_pro” folder or file that you can see.
Also delete any “addons” folder if there are any, which are nested inside the main “addons” folder this way: …2.81/scripts/addons/addons/
Start Blender and install the addons (Installing the Addons)
Undo/Ctrl-Z does not work¶
Make sure Global Undo is enabled in the User Preferences (Edit > Preferences…)
Rig: IK bones roll can’t be adjusted¶
The IK bones roll is calculated internally when clicking Match to Rig, based on the bones alignment. This is necessary for correct IK-FK snapping and pole calculation. The roll can be adjusted by shifting the bones positions to modify the alignment, see IK Chains.
Skin: Binding freezes¶
If Blender freezes when binding, it means there are either too many polygons, or the mesh is made of hundred of separate pieces (for example multiple hair meshes) while the Split Parts option is enabled. Thus, it’s very long to bind because each separate piece is split into a new object and skinned internally. To solve it:
Use the Voxelize option
Or use the Optimize High Res option and set the Polycount Threshold value lower than the amount of faces of the object, i.e. 50.000
Alternatively, use the Voxel Heat Diffuse Skinning addon: Voxel Skinning
Skin: Binding does not work or partially work, help!¶
Unfortunately, there are a few cases preventing binding to work due to invalid mesh topology. This is a current limitation of the Blender automatic weight solver, that Auto-Rig Pro is using as well. Here are instructions to fix it:
Enable Split Parts: Meshes made of multiple non-connected pieces (clothes, teeth, eyes…) may skin poorly/not at all if Split Parts is not enabled.
Unit scale: If the mesh is very high poly, it may not work because of the very short distance between vertices. Scale up the character and armature (S key, then type numpad 10 to scale ten time bigger), bind the mesh, then scale it down (S key, type numpad 0.1) to reset to the inital scale.
Invalid topology: First perform a remove double to delete multiple unnecessary vertices at the same location: select all vertices, W key > Remove double. Also make sure the mesh has no serious deficient topology by pressing Shift-Ctrl-Alt-M to select the non-manifold vertices. If you can see a lot of vertices selected all around the mesh (excluding boundaries), the mesh topology is not good enough: there may be edges connected to more than 2 faces, and other topology issues that needs fixes.
The mesh contains custom normals: Imported files such as OBJ and FBX format may contain complex/dirty normal datas that the binding solver does not appreciate. Delete them, select all vertices, press Shift-N to recalculate correct normals data.
Coordinates are not initialized: Make sure you initialized the mesh rotation and position by pressing Ctrl-A
Others : If it still doesn’t work, as weird as it may sound, the mesh is likely subject to an unindentified internal Blender bug that can be strangely fixed by adding a subsurf modifier. Add the subsurf modifier (level 1 is fastest), bind the mesh then delete the modifier.
Skin: Skinning issues after binding¶
The automatic binding just assigns weights based on bones-vertices distances. Perfect automatic weights can’t be expected, especially for subtle areas like the face, teeth, eyelids… The jawbone may deform the teeth, the eye bones may deform the eyelids, since they’re very close to each other and similar situations should be expected elsewhere. Depending on meshes topology, the quality of the results vary. To fix it, the next step in the rigging process is called “Weight Painting”: in other words, the rigger must manually assign bones weights to vertices, by painting them or by directly setting weight values to vertices. You should be familiar with weight painting tools in Blender to use this addon, it’s a pre-requisite. If not, you will easily find tutorial on Youtube or other places to learn from. Also, see the weight painting chapter of this documentation: Skinning: Weight Painting and Shape Keys
When using very high poly meshes (~80.000 faces) the Blender automatic weight solver may become slightly buggy on the edges… A simple way to fix this is switching to Weight Paint mode, and add a little negative level offset to the weight groups. And if more accuracy is needed, just paint over the automatic weights.
The markers are invisible?¶
Make sure the scene units are set to 1.0 scale. You’ll be able to change it later (e.g. Unreal export) but the smart feature only works with 1.0 scale units.
Game Engine Export¶
Blend Shapes Normals¶
If some surfaces deformed by blend shapes (shape keys) look bumpy, folded, while the vertices position are actually correct, the following settings should be applied in Unity. Below is a before and after comparison:
Animations may be simplified/compressed in game engines for performance reasons, which may lead to slight inaccuracies. This is generally not noticeable, but it may be visible when some polygons are very close to each other, resulting in overlapping faces. To fix it in Unity, disable it:
Also, game engines are subject to take shortcuts to deform vertices with simpler maths for skinning and blend shape evaluation, for better performances, at the cost of accuracy. This is why the Fbx animations may be slightly different when imported in Blender/Maya/3dsMax compared to Unity/Unreal, leading to overlapping polygons. If the above solution did not work, increase the distance between polygons.
Not exporting twist bones will lead to differences, since the vertices of twist bones (arm_twist, c_forearm_twist_offset…) will be weighted to the main bones at export time (arm_stretch, forearm_stretch..). Then their deformations will slightly change since twist bones may have different rotation. To fix it:
Export twist bones (it’s possible to use them with the humanoid rig in Unity by using additional scripts)
Or transfer the twist weights to the main weights and delete the twist vertex groups (“c_arm_twist_offset”, “forearm_twist”…). Use the Vertex Weight Mix modifier to handle the transfer with these settings and click Apply:
Incorrect Bones Rotation¶
There is unfortunately a known issue with the Fbx exporter, that hasn’t been solved yet but it can be fixed using a quick workaround.
If some bones are perfectly straight (vertically or horizontally), while being child of another straight bone, their rotation can be messed up when exporting. This is typically the case with eyelids, lips bones. The workaround is to click Edit Reference Bones, rotate very slightly the bones so that they’re not 100% straight, click Match to Rig and export it. Sorry for the inconvenience.
Fingers Rotation in Unreal¶
When importing the rig in Unreal as the Unreal Mannequin rig, it will perfectly match current animations only if the bones rotation are fully identical to the Mannequin rig. The automatic A-Pose in Auto-Rig Pro doesn’t take into account the bones roll/twist rotation value, which can lead to differences with the Mannequin rig.
It’s especially important for fingers. If you need perfect match, it’s necessary to correct the finger rotation so that it matches exactly the Mannequin fingers rotation, then Apply Pose as Rest Pose and Match to Rig. Here is the Mannequin armature blend file, you can append it in Blender for comparison.
Note that the fingers X axis is pointing up, while the Z axis is pointing up for Auto-Rig Pro fingers, this 90 rotation difference should be kept when rotating bones.
When exporting with x100 Units, the legs are broken?¶
Due to the an imprecision of the IK stretch calculation, Blender does not handle well big models, whose scale are multiplied by 100 when switching to Unreal Engine units. Unfortunately, after many trials, there’s nothing I can do on my side (addon code) to prevent it. The bug has been reported and hopefully and will be fixed someday. As a workaround, before clicking UE Units just make sure to scale the armature and mesh objects together so that they’re not bigger than the standard grid floor, in Blender units.