12-15-2021, 12:15 AM
Hi all, need a hand because I haven't been able to find a solution.
So I've been ripping rigged models from Monster Hunter Stories. I check all the bones, all is well. But when I put the model though the model checker, I get this:
So naturally, I check the model again, using these scripts to find any weights that aren't adding up.
The overweighted one finds a bunch. So naturally I check one of the offending vertices, in this case, the tip of the longest claw.
![[Image: Bad-Weights.png]](https://i.ibb.co/pKvtt9K/Bad-Weights.png)
And get this, the weights add up to exactly 1! 0.698039+0.301961 = 1! Yep, I even copied the exact numbers Blender provided into my calculator to make sure.
![[Image: It-Equals1.png]](https://i.ibb.co/QCxnWvD/It-Equals1.png)
WTF is happening? Is the error so infinitesimally small that Blender can't display to enough decimal places, or is there something else going on? I attached a model as a sample.
Thanks for any assistance.
So I've been ripping rigged models from Monster Hunter Stories. I check all the bones, all is well. But when I put the model though the model checker, I get this:
Quote:This model has 1641 point(s) with bad weighting. The weights of each bone should sum up to exactly 100% for each point, as otherwise they will not move correctly. If this model was converted from another format with a tool/script, there may be a flaw in the tool/script.
So naturally, I check the model again, using these scripts to find any weights that aren't adding up.
Quote:mport bpy^For finding unassigned vertices
me = bpy.context.object.data
for p in me.polygons: p.select = False
for e in me.edges: e.select = False
for v in me.vertices: v.select = sum(g.weight for g in v.groups) > 1
Quote:import bpy^For finding overweighted vertices
me = bpy.context.object.data
for p in me.polygons: p.select = False
for e in me.edges: e.select = False
for v in me.vertices: v.select = sum(g.weight for g in v.groups) > 1
The overweighted one finds a bunch. So naturally I check one of the offending vertices, in this case, the tip of the longest claw.
![[Image: Bad-Weights.png]](https://i.ibb.co/pKvtt9K/Bad-Weights.png)
And get this, the weights add up to exactly 1! 0.698039+0.301961 = 1! Yep, I even copied the exact numbers Blender provided into my calculator to make sure.
![[Image: It-Equals1.png]](https://i.ibb.co/QCxnWvD/It-Equals1.png)
WTF is happening? Is the error so infinitesimally small that Blender can't display to enough decimal places, or is there something else going on? I attached a model as a sample.
Thanks for any assistance.