Plumiferos reported bug:
When weights in Meshes are extremely small (< 0.01) normalizing them can give overflows, thanks to float precision limit. This is still unsolved, but for now the limit had to be set smaller... (reason is that Plumiferos uses mixed lattice and vertex-group deform) Also: running Blender in debug (-d) will print subversion now.
This commit is contained in:
@@ -794,8 +794,8 @@ void armature_deform_verts(Object *armOb, Object *target, DerivedMesh *dm,
|
||||
}
|
||||
}
|
||||
|
||||
/* actually should be EPSILON. weight values and contrib can be like 10e-39 small */
|
||||
if(contrib > 0.01f) {
|
||||
/* actually should be EPSILON? weight values and contrib can be like 10e-39 small */
|
||||
if(contrib > 0.0001f) {
|
||||
VecMulf(vec, armature_weight / contrib);
|
||||
VecAddf(co, vec, co);
|
||||
}
|
||||
|
||||
@@ -4350,6 +4350,9 @@ static void do_versions(FileData *fd, Library *lib, Main *main)
|
||||
{
|
||||
/* WATCH IT!!!: pointers from libdata have not been converted */
|
||||
|
||||
if(G.f & G_DEBUG)
|
||||
printf("read file %s\n Version %d sub %d\n", fd->filename, main->versionfile, main->subversionfile);
|
||||
|
||||
if(main->versionfile == 100) {
|
||||
/* tex->extend and tex->imageflag have changed: */
|
||||
Tex *tex = main->tex.first;
|
||||
|
||||
Reference in New Issue
Block a user