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-02-15Cleanup: clang-formatCampbell Barton
2020-02-14Alembic: refactor import and export of transformationsSybren A. Stüvel
The Alembic importer now works with local coordinates. Previously, the importer converted transformations from Alembic to world coordinates before processing them further; this processing often included re-converting to local coordinates. This change made it possible to remove some code that assumed that a child transform was only read after its parent transform. Blender's Alembic code follows the Maya convention, where in the zero orientation the camera looks forward instead of down. This extra rotation is now handled more consistently, and now also properly handles children of cameras. This fixes T73269. Unit tests were added to at least ensure that the importer and exporter are compatible with each other, and that static and animated camera transforms are handled in the same way.
2020-02-14BKE: Version Bump to 2.82.3Clément Foucault
Needed to avoid double fix of sun lights bias.
2020-02-14EEVEE: Shadow: Fix cascade shadowmap bias multiplicatorClément Foucault
This fixes the issue where sun shadowmaps needs a very big bias value to make any difference. The bias is now in world space and not dependant on shadow bounds. Unfortunatelly this breaks compatibility with previous version and old scene are likely to need user intervention to fix. Also fixes the property range. Fix T71661 EEVEE shadow from sun on incorrect face
2020-02-14Fix minor issue with new libraries ID usercount.Bastien Montagne
Library data-blocks are supposed to be tagged as 'real user', i.e. have one virtual user, since nothing else actually uses (refcounts) them. That was done in liblink code, but not for newly added ID-LI IDs when linking from a new libblend file e.g.
2020-02-13Cleanup old special cases from some libquery callbacks.Bastien Montagne
We now have proper flagging for horrible loopback pointers...
2020-02-13Refactor libquery ID looper callback to take a single parameter.Bastien Montagne
Using a struct here allows to change given parameters to the callbacks without having to edit all callbacks functions, which is always noisy and time consuming.
2020-02-12Fix T73446: WorkSpace ID properties not savedCampbell Barton
2020-02-11Sculpt: Split normal radius and area radiusPablo Dobarro
This enables an extra layer of control in the sculpt brushes. For now it is enabled only in Scrape, but it should work in all brushes (like normal radius). In the future it may also be enabled in other brushes. You can tweak in this property in the scrape brush to achieve a much better behavior when working on curve surfaces and control how much volume you want to trim. In most cases, it also fixes the bug where the brush keeps trimming in the same area without disabling accumulate. It should be possible to fix some other artifacts in other brushes by tweaking this default property. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D5993
2020-02-11Sculpt: Clay Strips Tip Roundness propertyPablo Dobarro
This patch allow to change the brush tip shape between a square and a circle using a brush property. After this change we are no longer testing the distance against a cube (the Z axis is not used). I did not test this in depth, but if it does not produce any artifacts I think we can keep it this way instead of adding more complexity to the code. In this new distance test the brush falloff is only applied on the rounded parts of the square to avoid sharp artifacts in the diagonals. Because of this, the round version is much softer than the square one. The planned hardness property will fix this, but this can also be avoided by setting the fallof to a custom curve. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D6165
2020-02-11Pose Brush: Option to disable the IK anchor pointPablo Dobarro
The IK chain was using an anchor point by default as it makes sense for posing, but for creating curved shapes it is useful to be able to disable it. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D6584
2020-02-10Cleanup: Rename `BKE_library_override_` functions to `BKE_lib_override_library_`Bastien Montagne
pqrt of T72604.
2020-02-10Refactor: move `Library`-specific functions into proper `BKE_library` file.Bastien Montagne
Even though we do not have much of those, this might change in the future, and in any case having specific functions for this ID type in generic `BKE_lib` area was really confusing.
2020-02-10Cleanup/refactor: Rename `BKE_library` files to `BKE_lib`.Bastien Montagne
Note that `BKE_library.h`/`library.c` were renamed to `BKE_lib_id.h`/`lib_id.c` to avoid having a too generic name here. Part of T72604.
2020-02-10Cleanup: spellingCampbell Barton
2020-02-07Cleanup: Rename `BKE_library_idmap` file to `BKE_main_idmap`Bastien Montagne
Part of T72604: > Proposal: BKE_library and BKE_main API naming: prefixes conventions
2020-02-07Fix crash when linking.Bastien Montagne
Stupid mistake in yesterday's own refactoring of readfile code...
2020-02-06Readfile: refactor/factorize more handling of common ID data.Bastien Montagne
- Move handling of private ID data (nodetree and master_collection) under generic ID code. This shortens code a bit, but mostly avoids having to modify all type-specific callback functions if/when we have to add generic processing to IDs there. - Seriously factorize `expand_xxx` area, in the same way we were already doing in `direct_link_xxx` and `lib_link_xxx` areas. Note that this actually also fixes some bugs (at least, potential ones), like e.g. missing call to expand_id() for our beloved 'private ID' (nodetrees & co), in current master code... Differential Revision: https://developer.blender.org/D6764
2020-02-06Merge branch 'blender-v2.82-release'Antonio Vazquez
2020-02-06Cleanup: Fix commentAntonio Vazquez
2020-02-06Merge branch 'blender-v2.82-release'Antonio Vazquez
2020-02-06Fix T64058: GPencil - Ensure object mode if linking from a libraryAntonio Vazquez
If the linked or append grease pencil object was added to the scene, the original file could have the datablock status in a different mode, so it's necessary to be sure is in object mode. Differential Revision: https://developer.blender.org/D6759
2020-02-05Refactor readfile's liblink code.Bastien Montagne
Liblink specific ID type function was so far running a loop over all IDs of relevant type, unlike almost any other 'ID-callback-like' functions in Blender, which usually let the looping controll to calling code. The latter approach is more convinient when one want to add generic (i.e. type-agnostic) code, since it typically only has to change code in one place (caller function) instead of tens of places (all the callback functions). This commit also changes/sanitizes a few things that had nothing to do in main liblink code, like mesh conversion from tessfaces to polys (which can be done in after-linking versionning code), or scenes' cycles detection/check regarding background 'set' scenes. Reviewed By: brecht Differential Revision: https://developer.blender.org/D6727
2020-02-05T73589: Code Quality: Renaming on BKE_material.hAntonio Vazquez
Old Name New Name ========= ========= init_def_material BKE_materials_init BKE_material_gpencil_default_free BKE_materials_exit test_object_materials BKE_object_materials_test test_all_objects_materials BKE_objects_materials_test_all give_matarar BKE_object_material_array give_totcolp BKE_object_material_num give_current_material_p BKE_object_material_get_p give_current_material BKE_object_material_get assign_material BKE_object_material_assign assign_matarar BKE_object_material_array_assign give_matarar_id BKE_id_material_array give_totcolp_id BKE_id_material_num assign_material_id BKE_id_material_assign clear_matcopybuf BKE_material_copybuf_clear free_matcopybuf BKE_material_copybuf_free copy_matcopybuf BKE_material_copybuf_copy paste_matcopybuf BKE_material_copybuf_paste BKE_material_init_gpencil_settings BKE_gpencil_material_attr_init BKE_material_add_gpencil BKE_gpencil_material_add BKE_material_gpencil_get BKE_gpencil_material BKE_material_gpencil_default_get BKE_gpencil_material_default BKE_material_gpencil_settings_get BKE_gpencil_material_settings
2020-02-05Readfile: Proper fix for `recalc` flags clearing in non-real IDsBastien Montagne
In current `readfile.c` code we have that: https://developer.blender.org/diffusion/B/browse/master/source/blender/blenloader/intern/readfile.c$3523 This is unconditionally clearing nodetree's recalc flags, and was added by rB81a762e79f83 ages ago. Thing is, in main ID read code we only clear that flag when **not** in undo context. This proposed change intends to properly handle those cases, by moving `id.recalc` flags clearing from `read_libblock()` to `direct_link_id()`, which is also called for all 'local' IDs (ntrees and master collections currently). I’d expect that change to be straightforward (and maybe even fixing some odd undocumented bugs), however there is no .blend file testcases associated with changes in rB81a762e79f83, so wouldn’t mind that to be double checked before it goes to master. Reviewed By: brecht Differential Revision: https://developer.blender.org/D6711
2020-01-29Merge branch 'blender-v2.82-release'Philipp Oeser
Merge conflict in source/blender/gpu/GPU_texture.h
2020-01-29UI: Info Editor Visual ChangesHarley Acheson
Changes to Info Editor making it easier to read. Only visual changes, no functional changes. Differential Revision: https://developer.blender.org/D6491 Reviewed by Julian Eisel
2020-01-29Fix T73054: Add DNA defaults for pose_ik_segmentsPablo Dobarro
This fixes the crash with pose_ik_segments = 0 in old files. Some files were saved with the property set to 0, so the versioning code won't work in that cases. I also changed that to fix the crash in those files. Reviewed By: brecht Maniphest Tasks: T73054 Differential Revision: https://developer.blender.org/D6663
2020-01-28Merge branch 'blender-v2.82-release'Bastien Montagne
2020-01-28Partially fix & comment about bad handling of `wrong_id` in `read_libblock()`.Bastien Montagne
Not fully fixing it for now since I do not see an easy way to remove freed pointer from libmap, and it does not seem to be an actual, practical issue currently, but eeek...
2020-01-27Cleanup: removed unused derivedDeform and derivedFinalBrecht Van Lommel
2020-01-27Cleanup: remove unused partial visibility code, weird indentationBrecht Van Lommel
2020-01-22UI: Hide empty Tool-Header in Rendering workspace (Image Editor)Julian Eisel
Fixes T71509
2020-01-22VSE: Tool system integrationRichard Antalik
Add toolbar to sequencer regions. A bit of refactoring has to be done in RNA space. Currently there is only cut tool implemented to serve as template for anybody who would like to add more.
2020-01-18Weight Paint: implement a red shade for bones with locked weights.Alexander Gavrilov
Blender supports locking vertex groups to prevent changes to the weights. However, as mentioned in comments for D3837, it is hard to use this because there is no interface for locking in 3D View. This adds a red shade to bones that are associated with a locked weight group during weight paint mode, as the first step to adding such interface. The next step is adding a pie menu for lock/unlock. Differential Revision: https://developer.blender.org/D6533
2020-01-16Minor correction to previous commitJulian Eisel
2020-01-16Fix failing asserts in versioning with some pre 2.5 filesJulian Eisel
Old pre 2.5 files may have had non active spaces stored that doen't have a header. The 2.5 versioning only added headers for active spaces, not inactive (so invisible) ones. Newer versioning code assumed there to always be a header though. Inserted a version patch to make sure there's always a header now. Fixes error reported to Debian, https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=949035.
2020-01-16Merge branch 'blender-v2.82-release'Bastien Montagne
2020-01-16Fix T73125: Crash when opening a file containing a Line Style.Bastien Montagne
Dummy typo in rB2e6159a4.
2020-01-16Merge branch 'blender-v2.82-release'Lukas Stockner
2020-01-16Fix T73133: UDIM texture count in Eevee is limited by OpenGLLukas Stockner
Based on @fclem's suggestion in D6421, this commit implements support for storing all tiles of a UDIM texture in a single 2D array texture on the GPU. Previously, Eevee was binding one OpenGL texture per tile, quickly running into hardware limits with nontrivial UDIM texture sets. Workbench meanwhile had no UDIM support at all, as reusing the per-tile approach would require splitting the mesh by tile as well as texture. With this commit, both Workbench as well as Eevee now support huge numbers of tiles, with the eventual limits being GPU memory and ultimately GL_MAX_ARRAY_TEXTURE_LAYERS, which tends to be in the 1000s on modern GPUs. Initially my plan was to have one array texture per unique size, but managing the different textures and keeping everything consistent ended up being way too complex. Therefore, we now use a simpler version that allocates a texture that is large enough to fit the largest tile and then packs all tiles into as many layers as necessary. As a result, each UDIM texture only binds two textures (one for the actual images, one for metadata) regardless of how many tiles are used. Note that this rolls back per-tile GPUTextures, meaning that we again have per-Image GPUTextures like we did before the original UDIM commit, but now with four instead of two types. Reviewed By: fclem Differential Revision: https://developer.blender.org/D6456
2020-01-15Fix T70965: Undo crash with specific fileJulian Eisel
Not sure how the WorkSpaceLayout.screen pointer could end up being NULL, but apparently that happens, or at least happened with older files. Rather than just adding NULL-checks, prefer not keeping around those invalid layouts at all.
2020-01-14Cleanup: added 'Versioning code until next subversion bump goes here'Sybren A. Stüvel
The `do_versions_after_linking_280()` function was missing a placeholder for the newly added versioning code. I copied the comments from the `blo_do_versions_280()` function. No functional changes.
2020-01-14Fix T72625: Outliner visibility keying doesn't carry over from 2.79bSybren A. Stüvel
During development of Blender 2.80 the `Object.hide` property was removed, and later reintroduced in rB5e968a996a53 as `Object.hide_viewport`. Of course there are some technical details missing in this summary, but this is the view that's given in the 2.80 release notes. FCurves on `Object.hide` weren't updated in versioning code, resulting in the property no longer being animated. This commit corrects the RNA path of such FCurves.
2020-01-07Sculpt: Pose Brush with Inverse KinematicsPablo Dobarro
This commits introduces the pose_ik_segments brush property in the Pose Brush. When increasing the IK segments count, the brush generates more segments and weights associations following the topology of the mesh. When moving the brush, these segments are transformed using an IK solver and they are used to deform the mesh. When pressing Ctrl, the brush controls the segments' roll rotation instead of using the IK solver. The brush falloff controls how much rotation is propagated from the first to the last segment in the chain. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D6389
2020-01-06Fix crash opening specific filesSergey Sharybin
For some reason socket flag and actual presence of link got out of sync. Check for link to be present prior to access it. Fixes crash opening file from T48684.
2019-12-30Sculpt: Add color alpha controls to the brush cursorPablo Dobarro
Previously the alpha was hardcoded to 0.7. Now it is possible to control the cursor alpha by changing the alpha color of the cursor color property. New alpha default is 0.9. This, with the new saturated colors, should make the cursor more visible on highdpi screens. I also removed the cache location preview as it is too visible right now with the new alpha and color values. Reviewed By: billreynish Differential Revision: https://developer.blender.org/D6433
2019-12-24Cleanup: correct filenames in commentsCampbell Barton
2019-12-20ID Management: Improve speed of code used when creating/renaming and ID.Bastien Montagne
This commit affects `id_sort_by_name()` and `check_for_dupid()` helper: * Add a new parameter, `ID *id_sorting_hint`, to `id_sort_by_name()`, and when non-NULL, check if we can insert `id` immediately before or after it. This can dramatically reduce time spent in that function. * Use loop over whole list in `check_for_dupid()` to also define the likely ID pointer that will be neighbor with our new one. This gives another decent speedup to all massive addition cases: | Number and type of names of IDs | old code | new code | speed improvement | | -------------------------------- | -------- | -------- | ----------------- | | 40K, mixed (14k rand, 26k const) | 39s | 33s | 18% | | 40K, fully random | 51s | 42s | 21% | | 40K, fully constant | 40s | 34s | 18% | Combined with the previous commits, this makes massive addition of IDs more than twice as fast as previously.
2019-12-20Cleanup: spellingCampbell Barton