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-04-30Revert "Windows: Support backtraces on release builds."Ray Molenkamp
Issues with older cmake.
2020-04-30Windows: Support backtraces on release builds.Ray Molenkamp
This diff add supports for crash logs on windows for release builds. This can be toggled on/off with the `WITH_WINDOWS_PDB` cmake option. by default it is on. Things to take into consideration: Release builds are hightly optimized and the resulting backtraces can be wrong/misleading, take the backtrace as a general area where the problem resides rather than an exact location. By default we ship a minimized symbol file that can only resolve the function names. This was chosen to strike a balance between growth in size of the download vs functionality gained. If more detailed information is required such as source file + line number information a full pdb can be shipped by setting `WITH_WINDOWS_STRIPPED_PDB` to off. The Release in the title of this diff refers to the release build type, not the official blender releases. Initially this will only be enabled for nightly build bot versions of blender, official releases as of now will not ship with symbols. Differential Revision: https://developer.blender.org/D7520 Reviewed by: brecht
2020-04-30Cleanup: unused variable warningsCampbell Barton
2020-04-30Task: Use TBB as Task SchedulerBrecht Van Lommel
This patch enables TBB as the default task scheduler. TBB stands for Threading Building Blocks and is developed by Intel. The library contains several threading patters. This patch maps blenders BLI_task_* function to their counterpart. After this patch we can add more patterns. A promising one is TBB:graph that can be used for depsgraph, draw manager and compositor. Performance changes depends on the actual hardware. It was tested on different hardwares from laptops to workstations and we didn't detected any downgrade of the performance. * Linux Xeon E5-2699 v4 got FPS boost from 12 to 17 using Spring's 04_010_A.anim.blend. * AMD Ryzen Threadripper 2990WX 32-Core Animation playback goes from 9.5-10.5 FPS to 13.0-14.0 FPS on Agent 327 , 10_03_B.anim.blend. Reviewed By: brecht, sergey Differential Revision: https://developer.blender.org/D7475
2020-04-28BLI: add VectorSet.is_empty methodJacques Lucke
2020-04-28Cleanup: remove unnecessary includesJacques Lucke
2020-04-28BLI: rename Vector.empty to Vector.is_emptyJacques Lucke
2020-04-28BLI: add Set.clear methodJacques Lucke
2020-04-28BLI: add Set.is_empty methodJacques Lucke
2020-04-28BLI: add library to simplify writing dot graph exportersJacques Lucke
See D6799 for some examples on how to use the library. Reviewers: sergey Differential Revision: https://developer.blender.org/D6799
2020-04-28BLI: add Map.lookup_or_add_default methodJacques Lucke
2020-04-28Cleanup: Strict compiler warning in release modeSergey Sharybin
2020-04-28BLI: add Map.is_empty() methodJacques Lucke
2020-04-25BLI: add LinearAllocatorJacques Lucke
This allocator is useful when it is necessary to allocate many small elements.
2020-04-25BLI: improve StringRef.copyJacques Lucke
2020-04-25BLI: add DefaultHash specializations for StringRef and StringRefNullJacques Lucke
2020-04-24BLI: Implement StringMap.add and StringMap.add_or_modifyJacques Lucke
2020-04-23BLI: various data structure improvementsJacques Lucke
* Rename template parameter N to InlineBufferCapacity * Expose InlineBufferCapacity parameter for Set and Map * Add some comments * Fixed an error that I introduced recently
2020-04-23BLI: remove TaskParallelRangePoolBrecht Van Lommel
This is not currently used and will take some work to support with TBB, so remove it until we have a new implementation based on TBB. Fixes T76005, parallel range pool tests failing. Ref D7475
2020-04-23BLI: optimize VectorSet implementationJacques Lucke
Instead of building on top of `BLI::Vector`, just use a raw array and handle the growing in `BLI::VectorSet`. After this change, the existing `EdgeSet` can be reimplemented using `BLI::VectorSet` without performance regressions.
2020-04-22BLI: add ScopedTimerJacques Lucke
This adds a simple timer that can be used for performance measurements in C++. More sophisticated timers are possible (e.g. one that takes averages, logs the results, ...). However, I found that this simple timer is good enough for 99% of my use cases. To use it just write `SCOPED_TIMER("my timer name");` or more commonly `SCOPED_TIMER(__func__);` into some scope. Reviewers: sergey Differential Revision: https://developer.blender.org/D7491
2020-04-21BLI: simplify naming of listbase wrapperJacques Lucke
2020-04-21BLI: Use .hh extension for C++ headers in blenlibJacques Lucke
2020-04-21BLI: add float2, float3, float4x4, Color4f and Color4bJacques Lucke
Reviewers: brecht, campbellbarton, sergey Differential Revision: https://developer.blender.org/D7450
2020-04-21CleanUp: Remove thread_id from `TaskFreeFunction`Jeroen Bakker
It isn't used; cleanup related to {D7475}
2020-04-21CleanUp: Renamed `BLI_task_pool_userdata` to `BLI_task_pool_user_data`Jeroen Bakker
In preparation for {D7475}
2020-04-21Merge branch 'blender-v2.83-release'Brecht Van Lommel
2020-04-21Fix clang-format differences between version 6 and 9Brecht Van Lommel
Version 6 does not appear to respect clang-format off for header sorting.
2020-04-17Task: Separate Finalize into Reduce And FreeJeroen Bakker
In preparation of TBB we need to split the finalize function into reduce and free. Reduce is used to combine results and free for freeing any allocated memory. The reduce function is called to join user data chunk into another, to reduce the result to the original userdata_chunk memory. These functions should have no side effects so that they can be run on any thread. The free functions should free data created during execution (TaskParallelRangeFunc). Original patch by Brecht van Lommel {rB61f49db843cf5095203112226ae386f301be1e1a}. Reviewed By: Brecht van Lommel, Bastien Montagne Differential Revision: https://developer.blender.org/D7394
2020-04-17Fix logical error in BLI_hash_pointer_to_colorCampbell Barton
'hash_b' was always zero as it's range was bit-shifted away.
2020-04-14BLI_math: add min/max utils for chars.Bastien Montagne
2020-04-11Fix for T75595: File Browser and Windows Unicode PathsHarley Acheson
Fix for incorrect conversion to utf16 in BLI_file_attributes(). Differential Revision: https://developer.blender.org/D7398 Reviewed by Brecht Van Lommel
2020-04-09TaskScheduler: Minor Preparations for TBBBrecht Van Lommel
Tasks: move priority from task to task pool {rBf7c18df4f599fe39ffc914e645e504fcdbee8636} Tasks: split task.c into task_pool.cc and task_iterator.c {rB4ada1d267749931ca934a74b14a82479bcaa92e0} Differential Revision: https://developer.blender.org/D7385
2020-04-05Cleanup: spellingCampbell Barton
2020-04-08Cleanup: rename to BLI_path_cwd to BLI_path_abs_from_cwdCampbell Barton
This is now more clearly a function that makes the path absolute using the current working directory.
2020-04-08Cleanup: missed renaming BLI_cleanup_unc_16 in recent refactorCampbell Barton
Missed from d14e76806921f
2020-04-07Fix T73566: Mesh analysis, error showing intersecting facesCampbell Barton
2020-04-07Cleanup: BLI_path.h function renamingCampbell Barton
Use BLI_path_ prefix, more consistent names: BLI_parent_dir -> BLI_path_parent_dir BLI_parent_dir_until_exists -> BLI_path_parent_dir_until_exists BLI_ensure_filename -> BLI_path_filename_ensure BLI_first_slash -> BLI_path_slash_find BLI_last_slash -> BLI_path_slash_rfind BLI_add_slash -> BLI_path_slash_ensure BLI_del_slash -> BLI_path_slash_rstrip BLI_path_native_slash -> BLI_path_slash_native Rename 'cleanup' to 'normalize', similar to Python's `os.path.normpath`. BLI_cleanup_path -> BLI_path_normalize BLI_cleanup_dir -> BLI_path_normalize_dir BLI_cleanup_unc -> BLI_path_normalize_unc BLI_cleanup_unc16 -> BLI_path_normalize_unc16 Clarify naming for extracting, creating numbered paths: BLI_stringenc -> BLI_path_sequence_encode BLI_stringdec -> BLI_path_sequence_decode Part of T74506 proposal.
2020-04-05Cleanup: macro hygiene, parenthesize argumentsCampbell Barton
2020-04-04Cleanup: remove unused methodJacques Lucke
2020-04-03Code Quality: Replace for loops with LISTBASE_FOREACHDalai Felinto
Note this only changes cases where the variable was declared inside the for loop. To handle it outside as well is a different challenge. Differential Revision: https://developer.blender.org/D7320
2020-04-03Cleanup: add missing #includes to some headersSybren A. Stüvel
It should be possible to `#include` any header without having to worry about its dependencies. I didn't go and check all include files for this, just the ones that caused me errors while I was refactoring the `anim_sys.c` file. No functional changes.
2020-04-03Cleanup: Rename ScrArea variables from sa to areaJulian Eisel
Follow up of b2ee1770d4c3 and 10c2254d412d, part of T74432. Now the area and region naming conventions should be less confusing. Mostly a careful batch rename but had to do few smaller fixes. Also ran clang-format on affected files.
2020-03-27Fix error in macOS system file detection in recent changesAnkit
Differential Revision: https://developer.blender.org/D7250
2020-03-26Fix T60682: adds macOS alias redirection for directoriesBrecht Van Lommel
This adds support for macOS aliases in addition to symlinks. It also adds support for hidden, readonly and system file attributes. Contributed by Ankit (ankitm) with modifications by me. Differential Revision: https://developer.blender.org/D6679
2020-03-25Cleanup: use 'r_' prefix for output argumentsCampbell Barton
Also pass some args as 'const'.
2020-03-24Cleanup: spellingCampbell Barton
2020-03-19Cleanup: `make format` after SortedIncludes changeDalai Felinto
2020-03-19VSE: Disk cacheRichard Antalik
This patch implements dumping images from cache to HDD. The main goal of this system is to provide a means to achieve consistent playback speed mainly for strips that are not possible to preview in real time. How to use: Disk cache has own settings in user preferences for path to storage, size limit and compression level. To use disk cache, you need to check `Use Disk Cache` box, set `Disk Cache Directory`, `Disk Cache Limit` and save or open existing .blend file. By default sequencer output will be cached only. Manual setting is possible in cache panel. Uses: - Replacement or alternative for proxies. Disk cache will work with any strip type, supports float images as well. - Storage for strip thumbnails. - Less RAM needs to be allocated for preview cache How it works: Disk cache is extension of RAM cache. Every image, that is stored or deleted in RAM will be stored or deleted on HDD as well. Images can be compressed to save space and for use on slower drives. Compressed images are slower to write and read though. Images are stored in bulk of 100 rendered frames per one file. This is to overcome slow file access time for large amount of files. Drawback is, that if one frame needs to be redrawn, all 100 frames are deleted. Reviewed By: sergey Differential Revision: https://developer.blender.org/D5524
2020-03-18Cleanup: Prepare for sorted headers on windowsRay Molenkamp
To prepare for D6811 small changes were needed. we can no longer undefine near/far since the windows headers use those extensively. some of the imbuf files need to include the windows headers explicitly to make sure it builds.