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! Just include the “rig_tools” and “proxy_picker” addons 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.
I purchased on Blender Market. I don’t receive update notifications, why?¶
Make sure you consented to receive emails from creators in your Blender Market account preferences: https://blendermarket.com/account/privacy-center/consents
I purchased on Blender Market. Where to download files and latest updates?¶
An email from Blender Market should have been sent to you containing the links to download the files. Alternatively, log in your Blender Market account and go to the Orders page: https://blendermarket.com/account/orders
If you don’t have an account yet, create one with the same email address used when purchasing, this should retrieve the previous orders automatically. For further support related to file download and account, please contact the Blender Market support: email@example.com
The addon doesn’t install¶
Make sure you installed the correct version of the addon for your Blender version:
Install the addons located at the root of the downloaded zip file if you use recent Blender versions (2.8x, 2.9x…)
If you use the old Blender 2.79 version, install the addons located in the 2.79 folder of the downloaded .zip file.
If it still doesn’t work, you may have installed previously the whole downloaded zip file, instead of installing each addon file, 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, see Installing the Addons
Undo/Ctrl-Z does not work¶
Make sure Global Undo is enabled in the User Preferences (Edit > Preferences…)
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
Binding doesn’t give satisfying results¶
Unfortunately, there are a few cases preventing binding to work due to unexpected mesh topology. This is a current limitation of the Blender automatic weight solver, that Auto-Rig Pro is using as well. Also, the automatic binding can never be perfect and requires the rig artist’s hand to improve the result. Here are solutions to fix it:
Enable Voxelize: the binding solver will evaluate voxelized instances of meshes (water-tight, closed volumes). It can lead to better results, but also inferior results sometimes depending on the meshes.
Enable Split Parts: meshes made of multiple disconnected pieces (clothes, teeth, eyes…) may skin poorly/not at all if this option is not enabled.
Enable Scale Fix: when meshes are high-poly or vertices very close to each other, the automatic binding can fail. This option tells the solver to operate internally on scaled up instances of meshes for better results. Alternatively, 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.
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.
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.
Messed up keyframing/ incorrect transforms¶
If keyframing controllers messes up the controllers position (controllers transforms (position, rotation) going crazy), make sure to disable Visual Keying in the Blender animation preferences. This option should never be enabled when dealing with bones that have Child Of constraints such as the feet, hands, it doesn’t work with it:
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¶
Make sure to press the Fix Rig button before exporting, see Check-Fix Rig
Make sure bones parent of the bone that has rotation issues have scale values equal to 1.0. In example, if the hand has rotation issues, make sure the forearm, arm, shoulders and spine bones have scale values to 1.0 to fix it.
Some bones may rotate randomly, with a jitter/shaky motion in certain cases. This is due to an unpredictable bug in the transform matrix evaluation when a bone has the same rotation as its parent bone (or +180°), for example lips bone parented to head bone. To fix it, enable Fix Rotation in the export option, see Misc. If it still doesn’t fix, use this quick workaround: click Edit Reference Bones, rotate very slightly the bones so that they’re not 100% lined up, and click Match to Rig
Retargetting animation in Unreal Engine may lead to rotation issues. Setting the retargetting translation mode to Skeleton fixes it, see Retargetting Translation Type
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. 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.