[Bf-blender-cvs] [4958aff] master: Freestyle: Added a piece of debug code for checking the consistency of face normals.

Tamito Kajiyama noreply at git.blender.org
Sat May 17 03:46:57 CEST 2014


Commit: 4958aff780a3ef63c9372b6111655b49ffb4a0d3
Author: Tamito Kajiyama
Date:   Sat May 17 10:36:39 2014 +0900
https://developer.blender.org/rB4958aff780a3ef63c9372b6111655b49ffb4a0d3

Freestyle: Added a piece of debug code for checking the consistency of face normals.

The code was found helpful while addressing T39669 and might help solving similar
issues related to face normals in the future.

===================================================================

M	source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp

===================================================================

diff --git a/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp b/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp
index a26bb0f..c6041e6 100644
--- a/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp
+++ b/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp
@@ -521,6 +521,14 @@ void BlenderFileLoader::insertShapeNode(ObjectInstanceRen *obi, int id)
 		}
 		else {
 			RE_vlakren_get_normal(_re, obi, vlr, facenormal);
+			if (G.debug & G_DEBUG_FREESTYLE) {
+				float dist, tmpNor[3];
+				normal_tri_v3(tmpNor, v3, v2, v1); /* normals are inverted in rendering */
+				dist = len_v3v3(facenormal, tmpNor);
+				if (dist > 1.0f) {
+					printf("Warning: vlak %d has an incorrect normal (dist. %.3g)\n", p, dist);
+				}
+			}
 			copy_v3_v3(n1, facenormal);
 			copy_v3_v3(n2, facenormal);
 			copy_v3_v3(n3, facenormal);




More information about the Bf-blender-cvs mailing list