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

Gaia Clary gaia.clary at machinimatrix.org
Fri Apr 21 15:27:34 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 21.04.2017 09:46, meneerj-a wrote:
> Hello,
>
> I have the impression that this list does not work.
>
> Does anyone has tested the blend file ?
>
> Thanks
>
> G.
>
> ------------------------------------------------------------------------
> *De :* Grégory Roger <grogerfr at yahoo.fr>
> *À :* "bf-animsys at blender.org" <bf-animsys at blender.org>
> *Envoyé le :* Jeudi 20 avril 2017 9h46
> *Objet :* Tr : [Bf-animsys] Bone Heat Weighting: failed to find 
> solution for one or more bones
>
>
>
>
>
>
> Hello Sybren,
>
> I am going to open a bug report, the blend is about 6Mo, with only the 
> character and the basic rig.
>
> I was not clear in point 1, let me reformulate it :
>
> > 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.
>
> When the script has an issue in solving the assignation of a weightmap 
> to a specific bone,it should leave this bone and jump to the next one 
> so that the process can go on on the rest of the mesh which is correct.
> Then, there can be an error message at the end of the process, but 
> maybe 80-90 % of weightmaps are created and that's a big improvement.
> The remaining "bad parts " can later  be manually assigned.
>
>
> Regards
> Grégory
>
>
> ------------------------------------------------------------------------
> *De :* Sybren A. Stüvel <sybren at stuvel.eu>
> *À :* Grégory Roger <meneerj-a at yahoo.fr>; Discussion list to assist 
> animation developers <bf-animsys at blender.org>
> *Envoyé le :* Mardi 18 avril 2017 10h14
> *Objet :* Re: [Bf-animsys] Bone Heat Weighting: failed to find 
> solution for one or more bones
>
> 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,
> -- 
> Sybren A. Stüvel
>
> https://stuvelfoto.nl/
> https://stuvel.eu/
>
>
>
>
>
>
>
> _______________________________________________
> 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/20170421/044b5d98/attachment.html>


More information about the Bf-animsys mailing list