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
2020-03-19Cleanup: `make format` after SortedIncludes changeDalai Felinto
2020-01-31Fix more undefined behavior in tangent space computationBrecht Van Lommel
Ref D6677
2020-01-27Fix undefined behavior in tangent space computationSimon G
Use an improved implementation for circular shift. Differential Revision: https://developer.blender.org/D6677
2019-10-03Cleanup: unused structs, struct membersCampbell Barton
2019-05-01Cleanup: comments (long lines) in mikktspaceCampbell Barton
2019-04-17ClangFormat: format '#if 0' code in intern/Campbell Barton
2019-04-17ClangFormat: apply to source, most of internCampbell Barton
Apply clang format as proposed in T53211. For details on usage and instructions for migrating branches without conflicts, see: https://wiki.blender.org/wiki/Tools/ClangFormat
2019-02-18doxygen: add newline after \fileCampbell Barton
While \file doesn't need an argument, it can't have another doxy command after it.
2019-02-06Cleanup: remove redundant doxygen \file argumentCampbell Barton
Move \ingroup onto same line to be more compact and make it clear the file is in the group.
2017-11-17Mikktspace: Speed up the merging of identical verticesLukas Stockner
Previously, Mikktspace just bucketed the vertices based on one spatial coordinate and then ran full pairwise comparisons inside each bucket. However, since models are three-dimensional, the bucketing has a massive false-positive rate, and since pairwise comparison is O(n^2), the merging process is very slow. But, since we only care about exactly identical vertices, there is a much more efficient approach - we can just hash all values belonging to each vertex and form buckets based on the hash. Since the hash has 32 bits and considers all values, false-positives are very unlikely - and since both hashing and the radixsort that's used for bucketing are O(n), both asymptotical and real-world performance (as well as code complexity) are significantly improved.
2017-09-19Fix T52818: Tangent space calculation is really slow for high-density mesh ↵Sergey Sharybin
with degenerated topology Now we replace O(N^2) computational complexity with O(N) extra memory penalty. Memory is much cheaper than CPU time. Keep in mind, memory penalty is like 4 megabytes per 1M vertices.
2017-09-19Mikkspace: Cleanup, reduce indentation levelSergey Sharybin
2017-08-25Fix for fix (tm): Residue of the debug codeSergey Sharybin
2017-08-25Fix mistake in previous tangent space optimizationSergey Sharybin
2017-08-25Another optimization of tangent space calculationSergey Sharybin
Don't use quick sort for small arrays, bubble sort works way faster for small arrays due to cache coherency. This is what qsort() from libc is doing actually. We can also experiment unrolling some extra small arrays, for example 3 and 4 element arrays. This reduces tangent space calculation for dragon from 3.1sec to 2.9sec.
2017-08-25Optimize tangent space calculation by inlining functionsSergey Sharybin
Brings tangent space calculation from 4.6sec to 3.1sec for dragon model in BI. Cycles is also somewhat faster, but it has other bottlenecks. Funny thing, using simple `static inline` already gives a lot of speedup here. That's just answering question whether it's OK to leave decision on what to inline up to a compiler..
2017-08-03mikktspace: minor optimizationCampbell Barton
Add a safe version of normalize since all uses of normalize did zero length checks, move this into a function. Also avoid unnecessary conversion. Gives minor speedup here (approx 3-5%).
2016-10-06Fix T49523: very slow normal map tangent computation for rendering in 2.78.Brecht Van Lommel
2016-09-18Fix T49384: crash in tangent space calculation with NaN mesh vertices.Brecht Van Lommel
2016-03-13Cleanup: warningCampbell Barton
2013-12-22Style Cleanup: remove preprocessor indentation (updated wiki style guide too)Campbell Barton
2013-09-09fix [#36685] crash calculating tangent space data on degenerate geometryCampbell Barton
the error was that the range check was done on the float before converting to an int. now convert to and int first and ensure a valid range on that.
2013-08-07code cleanup: some structs were declaring data when only typedef's were ↵Campbell Barton
intended, make local vars and functions static.
2012-09-20code cleanup: remove unused macros, commet some which may be useful later - ↵Campbell Barton
or good to keep for completeness. quieted some warnings and add flags -Wmissing-include-dirs and -Wno-div-by-zero to cmake/gcc
2012-09-15quiet -Wmissing-prototypes warnings, and enable this warning by default for ↵Campbell Barton
C with gcc. helps for finding unused functions and making functions static, also did some minor code cleanup.
2012-06-07style cleanupCampbell Barton
2012-06-05style cleanupCampbell Barton
2012-04-28style cleanup: changes to brace placement / newlines - for/while/if/switchCampbell Barton
2011-12-23Code cleanup: fix some clang static checker warnings.Brecht Van Lommel
2011-10-06set mikktspace functions as static which are not used externally.Campbell Barton
2011-07-16print an error message if Python.h can't be found for cmake and scons since ↵Campbell Barton
its such a common problem.
2011-03-29use 'is None' rather then '== None' as suggested by python docs & mis-spelling.Campbell Barton
2011-03-28misc nodes & editors: floats were being implicitly promoted to doubles, ↵Campbell Barton
adjust to use floats. + minor update to demo_mode
2011-03-19remove some redundant vars, assignments & checks.Campbell Barton
2011-03-08Apply a small patch from mikktspace author Morten Mikkelsen (cosmetic changes).Nathan Letwory
2011-02-25doxygen: intern/mikktspace tagged.Nathan Letwory
2011-02-18malloc() comes from stdlib.h per K&R ANSI C, C89 & C99.Guillermo S. Romero
If some plataform really needs malloc.h, that is the exception to get #ifdef.
2011-02-17apply fix [#26117] Recent changes to "mikktspace.c" broke building on ↵Campbell Barton
FreeBSD. Patch attached. also check for NetBSD. note: we probably should use define HAVE_MALLOC_H, seems common for other projects.
2011-02-16The modifications in mkktspace broke compilation on gcc 4.2.xM.G. Kishalmi
This is a patch proposed by sparky_ on irc.
2011-02-16fix from mikes for building on apple with gcc 4.2.1Campbell Barton
2011-02-15Fix from sparky for compile problem with older GCCNathan Letwory
2011-02-15Move mikktspace code to own library, so it is clear that it is alsoNathan Letwory
intended as a standalone library for use in other applications that want the same tangent space as Blender. This also keeps blenkernel clean(er) from extra math functions.