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
2021-08-22make dot output more compacttemp-multi-function-procedureJacques Lucke
2021-08-22avoid allocating index array in some casesJacques Lucke
2021-08-22add return instruction and initial procedure validationJacques Lucke
2021-08-22support span buffer reuseJacques Lucke
2021-08-22fix commentJacques Lucke
2021-08-22Merge branch 'master' into temp-multi-function-procedureJacques Lucke
2021-08-22Fix Windows builds after Zstandard commitsLukas Stockner
2021-08-21Use Zstandard compression for the sequencer cacheLukas Stockner
Reviewed By: campbellbarton, brecht, mont29 Differential Revision: https://developer.blender.org/D5799
2021-08-21Add support for Zstandard compression for .blend filesLukas Stockner
Compressing blendfiles can help save a lot of disk space, but the slowdown while loading and saving is a major annoyance. Currently Blender uses Zlib (aka gzip aka Deflate) for compression, but there are now several more modern algorithms that outperform it in every way. In this patch, I decided for Zstandard aka Zstd for several reasons: - It is widely supported, both in other programs and libraries as well as in general-purpose compression utilities on Unix - It is extremely flexible - spanning several orders of magnitude of compression speeds depending on the level setting. - It is pretty much on the Pareto frontier for all of its configurations (meaning that no other algorithm is both faster and more efficient). One downside of course is that older versions of Blender will not be able to read these files, but one can always just re-save them without compression or decompress the file manually with an external tool. The implementation here saves additional metadata into the compressed file in order to allow for efficient seeking when loading. This is standard-compliant and will be ignored by other tools that support Zstd. If the metadata is not present (e.g. because you manually compressed a .blend file with another tool), Blender will fall back to sequential reading. Saving is multithreaded to improve performance. Loading is currently not multithreaded since it's not easy to predict the access patterns of the loading code when seeking is supported. In the future, we might want to look into making this more predictable or disabling seeking for the main .blend file, which would then allow for multiple background threads that decompress data ahead of time. The compression level was chosen to get sizes comparable to previous versions at much higher speeds. In the future, this could be exposed as an option. Reviewed By: campbellbarton, brecht, mont29 Differential Revision: https://developer.blender.org/D5799
2021-08-21Refactor low-level blendfile reading into separate filesLukas Stockner
Instead of handling mmap, compression etc. all directly in readfile.c, refactor the code to use a generic FileReader. This makes it easier to add new compression methods or similar, and allows to reuse the logic in other places (e.g. thumbnail reading). Reviewed By: campbellbarton, brecht, mont29 Differential Revision: https://developer.blender.org/D5799
2021-08-21Clang: warn about C++20 designated initializersAnkit Meel
With the ongoing transition to C++ files, Windows build breaks often because of designated initializers. Now we have two compilers to catch the MSVC build error on. Reviewed By: #platform_macos, brecht, campbellbarton Differential Revision: https://developer.blender.org/D11940
2021-08-21Cleanup: minor changes to blf_font.cCampbell Barton
- Use early return when kerning isn't used. - Remove early return that prevented matching acquire/release calls.
2021-08-21Cleanup: organize blf_font.c functions using doxy-sectionsCampbell Barton
Functions in this file were scattered and not well organized.
2021-08-21Cleanup: spelling in comments & minor cleanupCampbell Barton
Also hyphenate 'mouse-move' use doxy sections in render_update.c & move function comment from the header to the source.
2021-08-21Correct build error from 0d7aab2375e6bb06e89dad851550b283a1ff805cCampbell Barton
2021-08-21Refactor: BLF Kerning Cache After UseHarley Acheson
Optimization of font kerning by only caching kerning values after a pair is encountered. Also saves unscaled values so they don't have to be rebuilt between font size changes. See D12274 for more details and speed comparison. Differential Revision: https://developer.blender.org/D12274 Reviewed by Campbell Barton
2021-08-20DocPy: Cleanup missing newline resulting in wrong html generationAaron Carlisle
2021-08-20DocPy: Update DependanciesAaron Carlisle
Updates sphinx and the theme to the latest version along with any of their dependencies. Note that we will be sticking to sphinx 4.1.1 until sphinx 4.2 for the same reasons listed in: https://developer.blender.org/rBM8334
2021-08-20Fix T90804: small grammatical error in noise threshold descriptionAlaska
Differential Revision: https://developer.blender.org/D12277
2021-08-20Cleanup, use BKE_scene_uses_cycles_experimental_featuresKévin Dietrich
2021-08-20Cleanup, remove extra code from previous commitKévin Dietrich
This got accidentally introduced while revising dependencies between patches for this feature, did not notice until it was too late.
2021-08-20Alembic Procedural: basic cache control settingsKévin Dietrich
This adds a setting to enable data caching, and another one to set the maximum cache size in megabytes. When caching is enabled we load the data for the entire animation in memory, as we already do, however, if the data exceeds the memory limit, render is aborted. When caching is disabled, we simply load the data for the current frame in memory. Ref D10197 Reviewed By: brecht Differential Revision: https://developer.blender.org/D11163
2021-08-20improve namingJacques Lucke
2021-08-20Fix memory leak while processing mouse eventGermano Cavalcante
Assignment missed.
2021-08-20Fix T90795: Moving keys in Grease Pencil Dopesheet crashes BlenderGermano Cavalcante
`td->loc` is referenced but not initialized.
2021-08-20cleanupJacques Lucke
2021-08-20Merge branch 'master' into temp-multi-function-procedureJacques Lucke
2021-08-20Functions: remove multi-function networkJacques Lucke
The multi-function network system was able to compose multiple multi-functions into a new one and to evaluate that efficiently. This functionality was heavily used by the particle nodes prototype a year ago. However, since then we only used multi-functions without the need to compose them in geometry nodes. The upcoming "fields" in geometry nodes will need a way to compose multi-functions again. Unfortunately, the code removed in this commit was not ideal for this different kind of function composition. I've been working on an alternative that will be added separately when it becomes needed. I've had to update all the function nodes, because their interface depended on the multi-function network data structure a bit. The actual multi-function implementations are still the same though.
2021-08-20Merge branch 'master' into temp-multi-function-procedureJacques Lucke
2021-08-20Geometry Nodes: add missing versioning for subdivision surface nodeJacques Lucke
This was missing from rBfecec1644ce54ea386eaeed5ca6748d4a7b2737b.
2021-08-20Cleanup: remove duplicate lineJacques Lucke
2021-08-20Functions: add utility methods to parameter builderJacques Lucke
2021-08-20Functions: add clear method to vector arrayJacques Lucke
2021-08-20BLI: add utility methods to IndexMaskJacques Lucke
2021-08-20cleanupJacques Lucke
2021-08-20Cleanup: Add CLOG to wm_files_link.cBastien Montagne
2021-08-20bring back clamping in math nodeJacques Lucke
2021-08-20Merge branch 'master' into mf-procedureJacques Lucke
2021-08-20Cleanup: use "free_data" suffix when the argument isn't freedCampbell Barton
Avoid API misuse that caused leaks in T90791 & 2788b0261cb7d33a2f6f2978ff4f55bb4987edae.
2021-08-20Cleanup: rename BKE_mesh_free_data -> BKE_mesh_free_data_for_undoCampbell Barton
This function only makes sense for undo which doesn't initialize the meshes ID. Otherwise BKE_id_free should be used.
2021-08-20Cleanup: remove BKE_mesh_free_data use for lineart mesh copiesCampbell Barton
Even though this didn't leak memory, BKE_mesh_free_data doesn't handle freeing data that is part of the ID making it error prone.
2021-08-20Cleanup: accidentally included printfCampbell Barton
2021-08-20Fix memory leak with building springs in the cloth simulatorCampbell Barton
Error in 2788b0261cb7d33a2f6f2978ff4f55bb4987edae.
2021-08-20Fix T90791: Knife project leaks memory with curve/text cutterCampbell Barton
2021-08-20Cleanup: rename BKE_mesh_free -> BKE_mesh_free_dataCampbell Barton
It wasn't obvious this didn't free the memory of the mesh it's self leading to memory leaks.
2021-08-20Cleanup: unused warningsCampbell Barton
2021-08-20Cleanup: clang-formatJesse Yurkovich
2021-08-20Alembic Procedural: only subdivide if subsurf modifier is presentKévin Dietrich
As subdivision objects are first class citizens in Alembic, to differentiate them with non-subdivided polygon meshes, the Alembic Procedural automatically sets up subdivision properties on the generated Cycles Mesh. However, for real-time playback subdivision is far too slow, so this modifies the detection of a MeshSeqCache modifier used to activate the procedural to allow for a Subsurf modifier right after the cache one. If present, the procedural will tag the object for subdivision, if absent, the object will be treated as a regular mesh. This is a temporary measure for until subdivision surface settings are part of the Mesh datablock (see T68891). Reviewed By: brecht Differential Revision: https://developer.blender.org/D11162
2021-08-20Cleanup, formatKévin Dietrich
2021-08-19Cycles: missing case for ignoring subdivision vertex normalsKévin Dietrich
This was missing from rBb8ecdbcd964a.