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-07-13BLI: fix constructor regression for Vector and ArrayJacques Lucke
This was introduced in rB403384998a6bb5f428e15ced5.
2020-07-13BLI: don't allow mutable span of initializer listJacques Lucke
2020-07-10BLI: add C++ random number generatorJacques Lucke
This adds `blender::RandomNumberGenerator` in `BLI_rand.hh`. Furthermore, `RNG` is now implemented in terms of this new generator. No functional changes are expected, the generated random numbers are not changed by this commit. Reviewers: campbellbarton, brecht Differential Revision: https://developer.blender.org/D8259
2020-07-10Fix for building on systems besides apple/windows/linuxCampbell Barton
2020-07-10BLI: initial hash function for Color4b and float4x4Jacques Lucke
2020-07-10Cleanup: spellingCampbell Barton
2020-07-10Cleanup: add BLI_linklist_find_lastCampbell Barton
This makes adding to the end of a linked list simpler, In most cases we avoid this in favor of BLI_linklist_append. For one off operations it's OK.
2020-07-10Cleanup: spellingCampbell Barton
2020-07-09BLI: add more operator overloads for float2Jacques Lucke
2020-07-09Fix: add missing extern "C"Jacques Lucke
2020-07-09BLI: rename rand.c to rand.ccJacques Lucke
2020-07-08BLI: improve constructors and conversions to spanJacques Lucke
This allows us to avoid many calls to `as_span()` methods. I will remove those in the next commit. Furthermore, constructors of Vector and Array can convert from one type to another now. I tested these changes on Linux with gcc and on Windows.
2020-07-08Cleanup: remove unused functionJacques Lucke
This is not necessary in C++17 anymore.
2020-07-08Cleanup: use c++17 helper variable templatesJacques Lucke
2020-07-08BLI: add disjoint set data structureJacques Lucke
This can be used to find separate islands in meshes efficiently (as is done in cycles already). Furthermore, this helps to implement some algorithms on node trees more efficiently.
2020-07-08BLI: add comparison operators and hash functions for float3, etc.Jacques Lucke
2020-07-07BLI: simplify copy constructor of ArrayJacques Lucke
2020-07-07BLI: simplify copy constructor of vectorJacques Lucke
2020-07-07BLI: provide access to underlying node in dot exporterJacques Lucke
2020-07-07Nodes: Generate multi-function network from node treeJacques Lucke
This adds new callbacks to `bNodeSocketType` and `bNodeType`. Those are used to generate a multi-function network from a node tree. Later, this network is evaluated on e.g. particle data. Reviewers: brecht Differential Revision: https://developer.blender.org/D8169
2020-07-07BLI: Correct spin lock definitionSergey Sharybin
The MSVC atomic function is defined for an unsigned type. Not sure why this became an issue after switch to TBB by default, maybe some CFLAGS changed to be more strict after that.
2020-07-07BLI: Fix mistake in SpinLock TBB migrationSergey Sharybin
Copy-paste mistake.
2020-07-07Optimization: use `BLI_bvhtree_intersect_plane` to detect faces that will be ↵Germano Cavalcante
affected by the knife tool The knife code currently calls the `BLI_bvhtree_overlap` function that tests the overlap between the mesh tree and an AABB that encompasses the points projected in the clip_start, clip_end and or clip_planes of the view. This resulted in many false positives since the AABB is very large. Often all the triangles "overlapped". The solution was to create a new function that actually tests the intersection of AABB with a plane. Even not considering the clip_planes of the view, this solution is more appropriate than using overlap. Differential Revision: https://developer.blender.org/D8229
2020-07-07Cleanup: remove redundant commentsJacques Lucke
Searching in these files for "_as" will reveal a comment at the top, that explains what these methods are for. There is no need to duplicate that knowledge all over the place.
2020-07-07Cleanup: spellingCampbell Barton
2020-07-06Cleanup: Use the BLI_edgehash API in the sewing simulation of clothsGermano Cavalcante
Also remove the code in the ghash that is no longer used. This change simplifies the existing code. Differential Revision: https://developer.blender.org/D8219
2020-07-06BLI: add methods to lookup a stored key in a setJacques Lucke
2020-07-06Cleanup: spelling, commentsCampbell Barton
2020-07-06Cleanup: rename namespace TimeIt to timeitJacques Lucke
According to our style guide, namespaces should have lower case names.
2020-07-06BLI: improve exception safety of memory utilsJacques Lucke
Even if we do not use exception in many places in Blender, our core C++ library should become exception safe. Otherwise, we don't even have the option to work with exceptions if we decide to do so.
2020-07-06BLI: refactor how buffers for small object optimization are storedJacques Lucke
Previously, there was an error when operator-> was returning an invalid type. See error C2839.
2020-07-06Cleanup: warnings, spellingCampbell Barton
2020-07-05Revert "BLI: refactor how buffers for small object optimization are stored"Jacques Lucke
This reverts commit 5d79f9f276b4b3e6289308c534c58e7ee3bb5e2d. This was introducing build errors in windows. Need a bit more time to check it.
2020-07-05BLI: refactor how buffers for small object optimization are storedJacques Lucke
2020-07-04BLI: fix mistake in move constructor of StackJacques Lucke
2020-07-03Clang-tidy: Enable braces-around-statements warningSebastian Parborg
2020-07-03Clang-Tidy: enable readability-named-parameterJacques Lucke
2020-07-03Cleanup: add const in various placesJacques Lucke
2020-07-03Cleanup: bring operator overloads closer togetherJacques Lucke
2020-07-03Cleanup: use nested namespacesJacques Lucke
2020-07-03Cleanup: Use trailing underscore for non-public data membersJacques Lucke
This makes the code conform better with our style guide.
2020-07-03BLI: Use TBB spin_mutex as SpinLock implementationSergey Sharybin
When building without TBB use native to the platform spin lock implementation. For Windows it is an atomic-based busy-wait, for Linux it is pthreads' spin lock. For macOS it is a mutex lock. The reason behind this is to stop using atomics library which has been declared deprecated in SDK version 10.12. So this changes fixes a lot of noisy warnings on the newer SDK. Differential Revision: https://developer.blender.org/D8180
2020-07-03BLI: Switch threads implementation file to C++Sergey Sharybin
Allows to use C++ primitives in the primitive implementation.
2020-07-03Cleanup: spellingCampbell Barton
2020-07-02Cleanup: spellingCampbell Barton
2020-07-01Cleanup: spellingCampbell Barton
2020-06-30BLI: support constructing Color4f from float pointerJacques Lucke
2020-06-30BLI: add Array constructor that does not initialize non-trivial typesJacques Lucke
This should rarely be necessary, but I have a use case coming up soon.
2020-06-30Cleanup: spellingCampbell Barton
2020-06-29Fix compile error on Apple ClangJulian Eisel
Needs to compile with `CMAKE_OSX_DEPLOYMENT_TARGET` of 10.14 at least to have `std::optional<>::value()` available. So we have to increase the minimum required compiler version, but that requires more changes. Just fix the build error for now.