[Bf-animsys] Bone Heat Weighting: failed to find solution for one or more bones

Gaia Clary gaia.clary at machinimatrix.org
Tue Apr 18 12:44:06 CEST 2017


Hi;

This issue happens often when a mesh is made of 2 or more unconnected 
mesh parts in the same mesh object. For example when you create a set of 
teeth for a character but modeled them all in one object. Or mesh based 
hair strains, things like that. The weighting algorithm then can not 
decide how to distribute the weights for some of the vertices.

The workaround is as follows:

1.) separate the Mesh object into parts ('p' in edit mode)  where each 
part contains one of the partial meshes
2.) Do the automatic weight from bones for all parts
3.) Join the parts back into one object

It should not be too complicated to improve the weighting operator: The 
operator could run the weight algorithm for each unconnected mesh part 
separately. Then the user would not need to bother with separating the 
parts and later rejoining them.

Regarding the information about which vertices are affected: I have 
looked at this a while back, but i could not figure out how to get the 
list of affected vertices from the weighting functions. I looked into 
this down to the function

bool EIG_linear_solver_solve()

But this function only returns either success or fail for an entire mesh 
object. And i am not sure how i can get the list of affected verts from 
that function. Maybe someone can give a hint or two here ? A nice way to 
show the affected verts would be to automatically select them. So when 
the user opens EDIT mode the affected verts shine in yellow.

cheers,
Gaia

On 18.04.2017 10:14, Sybren A. Stüvel wrote:
> Hello Grégory,
>
> On Mon, Apr 17, 2017 at 02:17:15PM +0000, Grégory Roger wrote:
>> I can't succeed in parenting a character to a rig with the
>> "automatic weights". "Bone Heat Weighting: failed to find solution
>> for one or more bones" is always returned.
> Can you open a bug report at https://developer.blender.org/? There
> you'll be able to attach a blend file that shows the issue. Please try
> to make the file as minimal/small as possible to show the problem (so
> not with a rig of 100+ bones).
>
>> with "Automatic Weights"  and during the process :
>>
>> 1. the parts of the mesh with poly/vertex problems should be left
>> aside, but on the correct part of the mesh the script should go on
>> and assign weights.
> I don't know what that sentence means.
>
>> 2. the parts of the mesh with poly/vertex problems should be shown
>> selected so that we know WHERE is the problem
> That's a good idea.
>
>> Blender 2.78a
> Before sending in a bug report, please try a more recent version of
> Blender (either the last release or, even better, a daily build from
> https://builder.blender.org/download/).
>
> Kind regards,
>
>
> _______________________________________________
> Bf-animsys mailing list
> Bf-animsys at blender.org
> https://lists.blender.org/mailman/listinfo/bf-animsys

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.blender.org/pipermail/bf-animsys/attachments/20170418/8fd05aaf/attachment.html>


More information about the Bf-animsys mailing list