From 5498629906c4944d88f26f0c59b13f9387d90d84 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Sat, 28 Mar 2015 00:34:16 +0500 Subject: Freestyle: Code cleanup, silence warning in release mode --- source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp | 1 + 1 file changed, 1 insertion(+) (limited to '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 dfcc77d3b23..f5f76516d38 100644 --- a/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp +++ b/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp @@ -256,6 +256,7 @@ void BlenderFileLoader::clipTriangle(int numTris, float triCoords[][3], float v1 } } BLI_assert(k == 2 + numTris); + (void)numTris; /* Ignored in release builds. */ } void BlenderFileLoader::addTriangle(struct LoaderState *ls, float v1[3], float v2[3], float v3[3], -- cgit v1.2.3 From ce504cffad49da80aff5b18d0f59d42998e3a9f7 Mon Sep 17 00:00:00 2001 From: Tamito Kajiyama Date: Mon, 11 May 2015 16:53:11 +0900 Subject: Freestyle: Fix for assertion failure in viewport preview. An assertion to check if `re->clipsta` < 0 (added as part of addressing T36009 in rBrB795034c17d76bef2a15e576ac9c70ae2268a823b) was failing when Freestyle viewport preview rendering takes place in the camera view with an orthographic camera (in this case, the user-defined clipping range is used without changes, so that `re->clipsta` is positive). The `re->clipsta` property has a negative value only when the 3D viewport is in an orthographic view but not in the camera view. It seems that this viewport setting cannot be identified from rendering settings accessible from Freestyle. Now a negative `re->clipsta` value is directly checked instead, without relying on other render flags. --- .../blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to '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 f5f76516d38..bcb38bc5971 100644 --- a/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp +++ b/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.cpp @@ -64,12 +64,11 @@ NodeGroup *BlenderFileLoader::Load() _viewplane_bottom = _re->viewplane.ymin; _viewplane_top = _re->viewplane.ymax; - if ((_re->r.scemode & R_VIEWPORT_PREVIEW) && (_re->r.mode & R_ORTHO)) { + if (_re->clipsta < 0.f) { // Adjust clipping start/end and set up a Z offset when the viewport preview // is used with the orthographic view. In this case, _re->clipsta is negative, // while Freestyle assumes that imported mesh data are in the camera coordinate // system with the view point located at origin [bug #36009]. - BLI_assert(_re->clipsta < 0.f); _z_near = -0.001f; _z_offset = _re->clipsta + _z_near; _z_far = -_re->clipend + _z_offset; -- cgit v1.2.3 From 530034511c8e5c5fbe8e2563112b1afdfd24d6bd Mon Sep 17 00:00:00 2001 From: Tamito Kajiyama Date: Thu, 18 Jun 2015 08:24:03 +0900 Subject: 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! --- .../freestyle/intern/blender_interface/BlenderFileLoader.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to '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 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); -- cgit v1.2.3