[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [38258] trunk/blender/source/blender/ render/intern/source/convertblender.c: Fix #27888: Render artifacts in 2.58 .1

Sergey Sharybin g.ulairi at gmail.com
Sat Jul 9 17:10:12 CEST 2011


Revision: 38258
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=38258
Author:   nazgul
Date:     2011-07-09 15:10:12 +0000 (Sat, 09 Jul 2011)
Log Message:
-----------
Fix #27888: Render artifacts in 2.58.1

It was a regression introduced in rev36301. Average normal calcilation
used to fail due to triangular faces which are too slight.

Do not use triangles with too small area for average normal calculation.

Revision Links:
--------------
    http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=36301

Modified Paths:
--------------
    trunk/blender/source/blender/render/intern/source/convertblender.c

Modified: trunk/blender/source/blender/render/intern/source/convertblender.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/convertblender.c	2011-07-09 14:33:28 UTC (rev 38257)
+++ trunk/blender/source/blender/render/intern/source/convertblender.c	2011-07-09 15:10:12 UTC (rev 38258)
@@ -2932,8 +2932,10 @@
 						vlr->v3= RE_findOrAddVert(obr, startvert+index[2]);
 						vlr->v4= NULL;
 
-						normal_tri_v3(tmp, vlr->v3->co, vlr->v2->co, vlr->v1->co);
-						add_v3_v3(n, tmp);
+						if(area_tri_v3(vlr->v3->co, vlr->v2->co, vlr->v1->co)>FLT_EPSILON) {
+							normal_tri_v3(tmp, vlr->v3->co, vlr->v2->co, vlr->v1->co);
+							add_v3_v3(n, tmp);
+						}
 
 						vlr->mat= matar[ dl->col ];
 						vlr->flag= 0;




More information about the Bf-blender-cvs mailing list