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
2017-11-15Cleanup: use 'uint'Campbell Barton
2017-11-15GSet: utils to access data stored outside the setCampbell Barton
2017-11-14Fix missing SpinLock typedef on macOSArto Kitula
2017-11-14Fix T53068: AMD Threadripper not working well with BlenderSergey Sharybin
The issue was caused by SpinLock implementation in old pthreads we ar eusing on Windows. Using newer one (2.10-rc) demonstrates same exact behavior. But likely using own atomics and memory barrier based implementation solves the issue. A bit annoying that we need to change such a core part of Blender just to make specific CPU happy, but it's better to have artists happy on all computers. There is no expected downsides of this change, but it is so called "works for me" category. Let's see how it all goes.
2017-11-14BLI: sync changes from 2.8Campbell Barton
2017-11-09Moved alignment attributes from my last commit to BLI_compiler_attrs.h for ↵Stefan Werner
future use.
2017-11-02Cleanup: code styleCampbell Barton
2017-11-01Implement a new automatic handle algorithm to produce smooth F-Curves.Alexander Gavrilov
The legacy algorithm only considers two adjacent points when computing the bezier handles, which cannot produce satisfactory results. Animators are often forced to manually adjust all curves. The new approach instead solves a system of equations to trace a cubic spline with continuous second derivative through the whole segment of auto points, delimited at ends by keyframes with handles set by other requirements. This algorithm also adjusts Vector handles that face ordinary bezier keyframes to achieve zero acceleration at the Vector keyframe, instead of simply pointing it at the adjacent point. Original idea and implementation by Benoit Bolsee <benoit.bolsee@online.be>; code mostly rewritten to improve code clarity and extensibility. Reviewers: aligorith Differential Revision: https://developer.blender.org/D2884
2017-10-29BLI_heap: add validation check, improve testsCampbell Barton
Also minor readability changes, avoid running both heap_up/down gives minor speedup too.
2017-10-29Cleanup: move docs out of headerCampbell Barton
2017-10-29Cleanup: const argsCampbell Barton
2017-10-29BLI_heap: minor changes to the APICampbell Barton
Recent addition of 'reinsert' didn't match logic for ghash API. Rename to BLI_heap_node_value_update, also add BLI_heap_insert_or_update since it's a common operation.
2017-10-28Use BLI_heap_reinsert for decimate and beautifyCampbell Barton
Improves performance for high poly meshes, ~70% faster for decimate, only ~10% for beautify.
2017-10-28BLI_hash: add BLI_heap_reinsertCampbell Barton
Allows avoiding remove/insert calls.
2017-10-28BLI_array_store: correct hashing single bytesCampbell Barton
The single byte version of hash_data was casting from unsigned char instead of signed. This didn't cause any errors since the result of each aren't compared. Even so, better keep them matching.
2017-10-28Cleanup: use uint type in BLICampbell Barton
2017-10-22Polyfill Beautify: half-edge optimizationCampbell Barton
Was using an edge hash for triangle -> edge lookups, updating triangle indices for each edge-rotation. Replace this with half-edge which can rotate edges much more simply, writing triangles back once the solution has been calculated. Gives ~33% speedup in own tests.
2017-10-20Cleanup: redundant castsCampbell Barton
2017-10-17Cleanup: use 'e' prefix for enum typedefsCampbell Barton
Convention was only followed loosely, apply to DNA where changes aren't likely to conflict. (Skipped ModifierType for eg).
2017-10-06Cleanup: Math lib naming (use v3 suffix)Campbell Barton
2017-10-06Cleanup: styleCampbell Barton
2017-10-02Math Lib: distance to AABBCampbell Barton
Original code by @mano-wii, modified for general use.
2017-09-29Drop platform support for Solaris & AIXCampbell Barton
These platforms didn't see maintenance in years. This commit just removes ifdef's & cmake check.
2017-09-27Math Lib: Add non-clamped round_* functionsCampbell Barton
Replace iroundf with round_fl_to_int, add other types
2017-09-26Beauty fill was skipping small facesCampbell Barton
2017-09-26Fix T52871: beauty fill errorCampbell Barton
Only lock tri's facing different directions. Needed because scanfill creates zero area faces.
2017-09-26Revert "Fix T52871: `BLI_polyfill_beautify_quad_rotate_calc_ex` was ↵Campbell Barton
mistakenly considering the state as degenerated" This reverts commit a8f11f5422afa01608817755eea310e987f896be. Result is no longer symmetrical, will investigate a different fix.
2017-09-23Fix T52871: `BLI_polyfill_beautify_quad_rotate_calc_ex` was mistakenly ↵Germano
considering the state as degenerated
2017-09-19Correct test ifdef in polyfillCampbell Barton
2017-09-19Fix T52834: Polyfill2D fails with co-linear edgesCampbell Barton
2017-09-19CMake: update for renamed headersCampbell Barton
2017-09-19BLI_utildefines_iter: Use for iteration helpersCampbell Barton
2017-09-19Cleanup: BLI_utildefines prefix for header-only libsCampbell Barton
This allows to have different macro headers without them sharing similar names to regular C modules.
2017-09-19Avoid bias when calculating quad split directionCampbell Barton
Some error checks weren't being done in both directions when calculating the best split direction for a quad.
2017-09-18Math Lib: clamped rounding utility functionsCampbell Barton
2017-09-18Math Lib: add divide_floor_iCampbell Barton
Integer division that floors on negative output (like Python's).
2017-09-15Polyfill Beautify: option to rotate out of degenerate stateCampbell Barton
Needed for 3D iterative edge-rotation to avoid flipping when projected from different angles, but could keep zero area faces in 2D polygons.
2017-09-06Math Lib: normalized vector project functionsCampbell Barton
2017-09-05Cleanup: use constCampbell Barton
Also use assert w/ rotate_m4.
2017-09-03BLI_kdtree: utility function to remove doublesCampbell Barton
2017-08-27BLI_rect: Function to calculate a matrix from 2 rctf'sCampbell Barton
2017-08-23Cleanup: mark VA_NARGS_COUNT as publicCampbell Barton
Was already used in two other headers, remove underscore prefix.
2017-08-23Cleanup: move variadic defines to their own headerCampbell Barton
So we can use in headers without pulling in many other defines.
2017-08-23BLI_string_utils: string joining utility functionsCampbell Barton
Includes a version that takes a separator and macros for convenience.
2017-08-23GHash: BLI_ghash_reinsert_key utility functionCampbell Barton
Useful when ghash keys are reallocated.
2017-08-12Math Lib: add isect_seg_seg_v2_point_exCampbell Barton
This exposes end-point bias argument, needed in rare cases.
2017-08-11GHash: note that 'deprecated' is used for privateCampbell Barton
2017-08-11Cleanup: whitespaceCampbell Barton
2017-08-07Refactor ID copying (and to some extent, ID freeing).Bastien Montagne
This will allow much finer controll over how we copy data-blocks, from full copy in Main database, to "lighter" ones (out of Main, inside an already allocated datablock, etc.). This commit also transfers a llot of what was previously handled by per-ID-type custom code to generic ID handling code in BKE_library. Hopefully will avoid in future inconsistencies and missing bits we had all over the codebase in the past. It also adds missing copying handling for a few types, most notably Scene (which where using a fully customized handling previously). Note that the type of allocation used during copying (regular in Main, allocated but outside of Main, or not allocated by ID handling code at all) is stored in ID's, which allows to handle them correctly when freeing. This needs to be taken care of with caution when doing 'weird' unusual things with ID copying and/or allocation! As a final note, while rather noisy, this commit will hopefully not break too much existing branches, old 'API' has been kept for the main part, as a wrapper around new code. Cleaning it up will happen later. Design task : T51804 Phab Diff: D2714
2017-08-01BLI_math: add simple helper to get amount of 'integer' digits in a float number.Bastien Montagne