diff options
author | Tamito Kajiyama <rd6t-kjym@asahi-net.or.jp> | 2015-06-18 02:24:03 +0300 |
---|---|---|
committer | Tamito Kajiyama <rd6t-kjym@asahi-net.or.jp> | 2015-06-18 02:28:35 +0300 |
commit | 530034511c8e5c5fbe8e2563112b1afdfd24d6bd (patch) | |
tree | aa35b86798d99ae7d963a0a4d636078e7e0b1158 /source/blender/freestyle | |
parent | 18f228d593123cf7fd6eef7ceda27a1c092e1df8 (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.cpp | 6 |
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); |