Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>2015-06-18 02:24:03 +0300
committerTamito Kajiyama <rd6t-kjym@asahi-net.or.jp>2015-06-18 02:28:35 +0300
commit530034511c8e5c5fbe8e2563112b1afdfd24d6bd (patch)
treeaa35b86798d99ae7d963a0a4d636078e7e0b1158 /source/blender/freestyle
parent18f228d593123cf7fd6eef7ceda27a1c092e1df8 (diff)
Freestyle: Fix for wrong assertion failure upon inverted face normals.
The assertion code was not taking quad faces into account. Problem report by Folkert de Vries (flokkievids) through personal communications, thanks!
Diffstat (limited to 'source/blender/freestyle')
-rw-r--r--source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp b/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp
index bcb38bc5971..7a61b735c4d 100644
--- a/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp
+++ b/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp
@@ -536,8 +536,12 @@ void BlenderFileLoader::insertShapeNode(ObjectInstanceRen *obi, int id)
else {
RE_vlakren_get_normal(_re, obi, vlr, facenormal);
#ifndef NDEBUG
+ /* test if normals are inverted in rendering [T39669] */
float tnor[3];
- normal_tri_v3(tnor, v3, v2, v1); /* normals are inverted in rendering */
+ if (vlr->v4)
+ normal_quad_v3(tnor, v4, v3, v2, v1);
+ else
+ normal_tri_v3(tnor, v3, v2, v1);
BLI_assert(dot_v3v3(tnor, facenormal) > 0.0f);
#endif
copy_v3_v3(n1, facenormal);