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
AgeCommit message (Collapse)Author
2015-07-20Freestyle: disabled debug code in ViewMapBuilder::ComputeIntersections().Tamito Kajiyama
2015-07-20Freestyle: minor optimization for space in the FEdgeXDetector.Tamito Kajiyama
Member variables and auto variables were changed from real (double) to float in most part of the FEdgeXDetector (except for curvature computations).
2015-07-20Freestyle: commented part of FEdgeXDetector::ProcessRidgeFace() that has no ↵Tamito Kajiyama
effect.
2015-07-20Freestyle: internal switch from double to float in mesh loading and ↵Tamito Kajiyama
construction of winged edges.
2015-07-20Freestyle: minor optimization for space from mesh importing to feature edge ↵Tamito Kajiyama
detection. Several class member variables were removed (at the cost of computing their values when retrieved) or changed to a type of smaller size. Also fixed whitespace.
2015-07-20Freestyle: minor optimization for space by using a pointer to a const char ↵Tamito Kajiyama
array instead of std::string.
2015-07-13 Imbuf types refactor.Antony Riakiotakis
ImBuf types were getting stored as bitflags in a 32bit integer which had already run out of space. Solved the problem by separating file type to an ftype enum, and file specific options to foptions. Reviewed by Campbell, thanks a lot!
2015-04-02CleanupCampbell Barton
2015-03-27Freestyle: Code cleanup, prepare for strict C++ flagsSergey Sharybin
2015-03-13Initial compilation support with C++11 featureset enabledSergey Sharybin
This commit makes some preliminary fixes and tweaks aimed to make blender compilable with C++11 feature set. This includes: - Build system attribute to enable C++11 featureset. It's for sure default OFF, but easy to enable to have a play around with it and make sure all the stuff is compilable before we go C++11 for real. - Changes in Compositor to use non-named cl_int structure fields. This is because __STRICT_ANSI__ is defined by default by GCC and OpenCL does not use named fields in this case. - Changes to TYPE_CHECK() related on lack of typeof() in C++11 This uses decltype() instead with some trickery to make sure returned type is not a reference. - Changes for auto_ptr in Freestyle This actually conditionally switches between auto_ptr and unique_ptr since auto_ptr is deprecated in C++11. Seems to be not strictly needed but still nice to be ready for such an update anyway/ This all based on changes form depsgraph_refactor branch apart from the weird changes which were made in order to support MinGW compilation. Those parts of change would need to be carefully reviewed again after official move to gcc49 in MinGW. Tested on Linux with GCC-4.7 and Clang-3.5, other platforms are not tested and likely needs some more tweaks. Reviewers: campbellbarton, juicyfruit, mont29, lukastoenne, psy-fi, kjym3 Differential Revision: https://developer.blender.org/D1089
2014-10-29Cleanup: warnings, typosCampbell Barton
2014-10-03Cleanup: spelling, wsCampbell Barton
2014-10-02Freestyle: Fix for destructive view map modifications during chaining ↵Tamito Kajiyama
operations. The view map is mostly treated as a read-only data structure by line stylization operations (i.e., selection, chaining, splitting, sorting and stroke creation). The only exception is the chaining operation in some cases where insertion of extra FEdge objects is necessary to ensure the continuity of underlying FEdges from which a chain is constructed. The present revision addresses the removal of extra FEdges so to keep the view map clean and suitable for reuse in subsequent render frames.
2014-10-02Freestyle: Finer memory statistics with CXX_GUARDEDALLOC.Tamito Kajiyama
2014-09-02Better fix for T41464: Material Boundary bug in Freestyle.Tamito Kajiyama
The problem addressed here is that there was no mean to check if an iterator points the last of the elements being iterated over. Such checking is necessary to reliably dereference the iterator (i.e., calling the operator*() method of the underlying C++ iterator object). Now Interface0DIterator and StrokeVertexIterator have an .at_last property to check if an iterator points the last element. Using this new API feature, the present commit partly reverts the previous commit rBeb8964fb7f19 to better address T41464. Differential revision: https://developer.blender.org/D752 Author: flokkievids (Folkert de Vries) Reviewed by: kjym3 (Tamito Kajiyama)
2014-08-17CleanupCampbell Barton
2014-06-02Freestyle: Minor fixes.Tamito Kajiyama
- Fixed a typo in docstring. - Replaced int with boolean constants. - Updated lists of base classes for used-defined unary 0D/1D functions.
2014-05-26Fix for a missing code update in my commit rB08528f577dcb.Tamito Kajiyama
2014-05-25Freestyle: Partial fix for thinning strokes due to flipping stroke ↵Tamito Kajiyama
directions at TVertices. A description of the problem is found in https://developer.blender.org/T36425#19 . The cause of the issue was identified as roudning errors in Operators::createStroke() due to insufficient numerical precision. Precision promotion from float to double was done in the return values of getPoint3D/2D methods in Interface0D and its subclasses in C++ (data members stored in the 0D classes have already been in double precision).
2014-05-21Freestyle: code cleanup: removed old commented lines of code in ↵Tamito Kajiyama
SilhouetteGeomEngine.
2014-05-21Freestyle: Fix for Z normalization in SilhouetteGeomEngine.Tamito Kajiyama
The Z component of the projected point in the 2D image space has already been normalized in GeomUtils::fromWorldToImage().
2014-05-21Freestyle: Added utility function SilhouetteGeomEngine::CameraToImage().Tamito Kajiyama
TODO: Fix for Z normalization in SilhouetteGeomEngine methods.
2014-05-20Freestyle: Fix for GetOccludeeF1D returning a one-element list containing ↵Tamito Kajiyama
None when it is supposed to return an empty list.
2014-04-17Fix another Freestyle building glitch.Bastien Montagne
2014-04-17Attempt to fix one more issue with Freestyle compilationSergey Sharybin
2014-04-17Fix compilation error of FreestyleSergey Sharybin
Seems to be some sort of namespace conflict or so which is solved by reshuffling the includes a bit.
2014-04-17Freestyle: removed unused *_EXPORT qualifiers for building Windows DLLs.Tamito Kajiyama
These qualifiers were leftovers of the stand alone Freestyle program and not used (set to an empty string) in Blender for years.
2014-04-17Freestyle: removed unnecessary #include files and made minor code cleanup.Tamito Kajiyama
2014-04-17Freestyle: Fix for VC++ warnings about 'hypot' macro redefinitions (Part 4).Tamito Kajiyama
(See commit e1771e72fbbf828dbf5bed871b814288389f3611 for more detail of the problem). Fix for a C++ scope issue caused by 'using namespace Freestyle' that was assumed even within the Freestyle namespace definition.
2014-04-17Freestyle: Fix for VC++ warnings about 'hypot' macro redefinitions (Part 3).Tamito Kajiyama
(See commit e1771e72fbbf828dbf5bed871b814288389f3611 for more detail of the problem). Made changes to intern/view_map/Interface0D.h and intern/python/Director.h to avoid #include <Python.h> and keep non-Python header files independent of it.
2014-04-17Freestyle: Fix for VC++ warnings about 'hypot' macro redefinitions (Part 1).Tamito Kajiyama
The issue was caused by including both Python.h and BLI_math.h. Since the macro definition in Python.h was unconditional, it was necessary to include it first and then BLI_math.h. Addressing the issue turned out to affect many Freestyle source files. There were several other coding flaws that complicated the situation: 1. intern/system/FreestyleConfig.h was abused just to include BLI_math.h which was in fact unnecessary in FreestyleConfig.h. While addressing this, inclusion of both math.h and BLI_math.h had to be duly dealt with to avoid a compiler error about round(). 2. #include <Python.h> was not properly put in the extern "C" { ... } construct. 3. intern/view_map/Interface0D.h and intern/python/Director.h, both of which included Python.h, were included from within Freestyle header files that were almost or completely independent of Python. These non-Python header files were used everywhere in the Freestyle code base, causing many cases of the reported macro redefinitions. 4. The Director.h file was also declaring 'using namespace Freestyle', which was causing another scope issue in several Freestyle header files. This commit is intended to address the first problem above. Subsequent commits will deal with the other three.
2014-04-15Code cleanup: indentationCampbell Barton
2014-04-07Code cleanup: use parens around multi-line defines.Campbell Barton
2014-04-04Freestyle: Removed SVertex _curvatureFredo and _directionFredo and their ↵Tamito Kajiyama
getter/setter methods.. These data elements are undocumented and of little use. For now they are commented out in the implementation in favor of less memory consumption, and a very limited support for these data components in the Python API was just removed (should be easy to recover).
2014-04-04Freestyle: Fix for class definitions of 0D/1D functions (functors).Tamito Kajiyama
Symbol 'real' is an alias of double and is subject to future change, while the interface of 0D/1D functions is part of the stable Freestyle Python API. So all occurrences of this type in the class definitions were replaced with double.
2014-04-03Freestyle: Fix for debug information about sweep line intersection detection.Tamito Kajiyama
Vertices of two edges were swapped by mistake. Also fixed indentation and added a couple of debug prints to make it easier to visualize the lines using Matlab.
2014-04-02Fix for building with MSVC2008Campbell Barton
2014-04-01Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT defineCampbell Barton
2013-11-30Woo Hoo. First git commit.Alexandr Kuznetsov
Changes for VC2013 Now, I can build Blender with VC2013 with Cycles, Collada, OpenExr,OpenImageIO disabled. Also, you need VC2008 sp1 installed to make old libs compatible.
2013-11-22Code Cleanup: int pointer comparisonCampbell Barton
2013-10-31code cleanup: spellingCampbell Barton
2013-09-15Fix [#36727] Curve Object Scaled to 0 + Freestyle = CrashBastien Montagne
Division by zero...
2013-09-05code cleanup:Campbell Barton
- add missing headers from cmake (own omission) - quiet rna_test.c unused define warnings. - minor style edits - spelling corrections and ignore all uppercase words with spell checking script.
2013-08-24Quiet annoying VC++ warning C4819: The file contains a character that cannot ↵Tamito Kajiyama
be represented in the current code page.
2013-08-11use 'greater/less then or equal to' operators rather then adding 1.Campbell Barton
2013-08-04add c++/guardedalloc to more freestyle classes, also remove redundant 'public:'Campbell Barton
2013-07-13Fix for [#35482] 2.67 freestyle line visibility computation bug.Tamito Kajiyama
The reported line visibility issue was caused by a wrong calculation of a 2D bounding box (so-called "proscenium face" in Freestyle) in the case of a spherical grid data structure used for a perspective camera. The problem was resulting from the proscenium computation based on two corners (min and max) of the 3D bounding box of imported mesh data. Aware of the spherical coordinate transformation involving non-linear (arctangent) functions, now the proscenium is computed by taking in account all the eight corners of the 3D bounding box. Also added minor code changes to facilitate future debugging.
2013-07-11Fix for Bug #35695: Freestyle produces extra line across an object with ↵Tamito Kajiyama
pointed areas. The cause of inconsistent edge connectivity in the view map (documented in the commit log of revision 58006) was identified and fixed. The problem was that when a ViewEdge was split at a cusp vertex (ViewMapBuilder::computeCusps()), the ViewVertex at one end of a newly created ViewEdge in ViewMap::InsertViewVertex() was not properly updated to take account of edge connectivity changes.
2013-06-26correct typos in comments.Campbell Barton
2013-06-16Fix for Freestyle face marks incorrectly reset when feature edges are split ↵Tamito Kajiyama
at 2D intersections. Problem report by an anonymous forum user with a .blend file for reproducing the bug, thanks!