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
2022-05-25Merge branch 'blender-v3.2-release'Bastien Montagne
2022-05-25Cleanup: Link/append: Remove useless proxy handling code.Bastien Montagne
This was not effectively doing anything anymore, time to remove it.
2022-05-25Merge branch 'blender-v3.2-release'Bastien Montagne
2022-05-25Fix link/append code not properly setting correct ID in context items.Bastien Montagne
When appending an already linked data, `BKE_blendfile_append` would not properly substitute the `item->new_id` pointer of link/append context items with the local duplicate of the linked ID. This would cause drag'n'drop of assets to work incorrectly in some cases. Fixes part of T95706 and T97320.
2022-05-17Cleanup: Use `switch` and `BLI_assert_unreachable()` more.Bastien Montagne
Replace some `if/else if` chains by proper `switch` statement. Replace some `BLI_assert(0)` calls by `BLI_assert_unreachable()` ones.
2022-05-17Cleanup: spelling in commentsCampbell Barton
2022-05-13Merge branch 'blender-v3.2-release'Bastien Montagne
2022-05-13Fix T98072: Regression: When appending a Scene, the Collections that are ↵Bastien Montagne
excluded get instanced into Current Scene. This was due to using `BKE_scene_has_object` function, which uses the cache of bases of the viewlayers, which do not have entries for the content of excluded collections... Now use `BKE_collection_has_object_recursive` instead.
2022-05-03Cleanup: spelling in commentsCampbell Barton
2022-04-29Fix T95480: Crash when relocating libraries in some cases.Bastien Montagne
While code deleting old (relocated to new ones) IDs would work fine in typical cases, it would fail badly in others, when e.g. drivers would create 'reversed' dependency from the obdata ID to the object ID. This commit uses a less efficient, but much safer method. It also ensures no relocated old IDs is left over in the file (previous version could easily leave some old IDs from the old library until a full save/reload cycle happened).
2022-04-13Fix T97289: Linked collection assets disappear.Bastien Montagne
After appending, new link/append code would delete linked IDs, even if those where pre-existing. Note that this would actually lead to invalid memory access later in append code (ASAN crash).
2022-03-28Fix various UI messages issues.Bastien Montagne
2022-03-10Cleanup: spelling in comments & some minor clarificationsCampbell Barton
2022-03-01Cleanup: use doxygen comments, correct spellingCampbell Barton
Also move eDupli_ID_Flags doc-string to it's declaration.
2022-02-28Merge branch 'blender-v3.1-release'Bastien Montagne
2022-02-28Fix T96048: Crash on appending with driver variables loop in shapekeys.Bastien Montagne
The usual 'shape keys snowflake' nightmare again...
2022-02-11File headers: SPDX License migrationCampbell Barton
Use a shorter/simpler license convention, stops the header taking so much space. Follow the SPDX license specification: https://spdx.org/licenses - C/C++/objc/objc++ - Python - Shell Scripts - CMake, GNUmakefile While most of the source tree has been included - `./extern/` was left out. - `./intern/cycles` & `./intern/atomic` are also excluded because they use different header conventions. doc/license/SPDX-license-identifiers.txt has been added to list SPDX all used identifiers. See P2788 for the script that automated these edits. Reviewed By: brecht, mont29, sergey Ref D14069
2022-02-04Remove internal proxy code, and deprecate related DNA data.Bastien Montagne
Part of T91671. Not much else to say, this is mainly a massive deletion of code. Note that a few cleanups possible after this proxy removal were kept out of this commit to try to reduce a bit its size. Reviewed By: sergey, brecht Maniphest Tasks: T91671 Differential Revision: https://developer.blender.org/D13995
2022-02-02Remove option to not auto-convert proxies on file load.Bastien Montagne
Now all proxies will always be converted to library overrides. If conversion fails, they are simply 'disabled'. This should be the last 'user-visible' step of proxies removal. Remaining upcoming commits will remove internal ID management, depsgraph and evaluation code related to proxies. Also bump the blendfile subversion. Part of T91671.
2022-02-02Proxies Removal: Handle conversion to liboverrides also for linked data.Bastien Montagne
So far linked proxies were just kept as-is, this is no longer an option. Attempt to convert them into liboverrides as much as possible, though some cases won't be supported: - Appending proxies is broken since a long time, so conversion will fail here as well. - When linking data, some cases will fail to convert properly. in particular, if the linked proxy object is not instanced in a scene (e.g. when linking a collection containing a proxy as an epty-instanced collection instead of a view-layer-instanced collection). NOTE: converion when linking/appending is done unconditionnaly, option to not convert on file load will be removed in next commit anyway. Part of T91671.
2022-01-17T94828: Appending collection with instancing links nested collectionsJulian Eisel
See T94828 for details. Differential Revision: https://developer.blender.org/D13803 Reviewed by: Bastien Montagne
2022-01-06Cleanup: spelling in commentsCampbell Barton
2021-12-21Fix T93757: Do not force-instantiate indrectly linked objects in linking case.Bastien Montagne
2021-12-21Fix T93839: Copy/Paste of empty instantiating a collection.Bastien Montagne
Do not also instantiate a collection in the view layer, if it is already instantiated through an empty object.
2021-12-07Cleanup: move public doc-strings into headers for 'blenkernel'Campbell Barton
- Added space below non doc-string comments to make it clear these aren't comments for the symbols directly below them. - Use doxy sections for some headers. - Minor improvements to doc-strings. Ref T92709
2021-12-06Cleanup: remove some temp dev asserts in new link/append code.Bastien Montagne
No longer needed now that all code uses that new BKE_blendfile_link_append module, and that instantiation code in BLO_readfile has been removed.
2021-12-02Blendread: Remove all instantiation logic from `BLO_library_link_` code.Bastien Montagne
Instantiation is now fully handled by BKE_blendfile_link_append module. Note that this also allows removal of the `BLO_LIBLINK_NEEDS_ID_TAG_DOIT` flag. Part of T91414: Unify link/append between WM operators and BPY context manager API, and cleanup usages of `BKE_library_make_local`.
2021-12-02Cleanup: spelling in commentsCampbell Barton
2021-11-30LibLink/Append: Some cleanup and addition to comments.Bastien Montagne
2021-11-30LibLink/Append: Add a utils to link/append all ID of given types from a ↵Bastien Montagne
given library. This will be used by the copy/paste code. Part of T91414: Unify link/append between WM operators and BPY context manager API, and cleanup usages of `BKE_library_make_local`.
2021-11-30LibLink/Append: tweak instantiation of collections in viewlayers.Bastien Montagne
When appended collections are instantiated in viewlayers, do not add to viewlayers collections children of other instantiated collections. This default behavior is required for proper copy/paste behavior. If previous behavior needs to be brought back for regular append operation, this can be decided and done, but think this default behavior also makes sense in normal append case. part of T91414: Unify link/append between WM operators and BPY context manager API, and cleanup usages of `BKE_library_make_local`.
2021-11-30LibLink/Append: tweak asserts in main BKE link/append functions.Bastien Montagne
Now that those functions are much widely used, just return early in case there is nothing to link/append, instead of asserting over it.
2021-11-30Cleanup: spelling in comments & stringsCampbell Barton
2021-11-30Cleanup: use colon after doxygen params, correct slash directionCampbell Barton
2021-11-26Fix T93402: Linking Collections instantiate extra sub-collections.Bastien Montagne
Linking is more relax than appending when it comes to instantiating indirectly linked collections/objects.
2021-11-25Merge branch 'blender-v3.0-release'Bastien Montagne
Conflicts: source/blender/windowmanager/intern/wm_files_link.c
2021-11-23BKE LibLink/Append: Add mechanism for external code to loop over link/append ↵Bastien Montagne
context items. Will be required for python's `bpy.data.libraries.load()` refactor.
2021-11-23BKE link/append: Add optional blendfile handle to libraries.Bastien Montagne
This enables calling code to deal with the blendfile handle themselves, BKE_blendfile_link then just borrows, uses this handle and does not release it. Needed e.g. for python's libcontext system to use new BKE_blendfile_link_append code. Part of T91414: Unify link/append between WM operators and BPY context manager API, and cleanup usages of `BKE_library_make_local`.
2021-11-23BKE link/append: Add optional blendfile handle to libraries.Bastien Montagne
This enables calling code to deal with the blendfile handle themselves, BKE_blendfile_link then just borrows, uses this handle and does not release it. Needed e.g. for python's libcontext system to use new BKE_blendfile_link_append code. Part of T91414: Unify link/append between WM operators and BPY context manager API, and cleanup usages of `BKE_library_make_local`.
2021-11-22BKE Link/Append: Use BLO's LibraryLink_Params.Bastien Montagne
This allows to reduce signature of several functions, and make it eaiser to integrate more higher-level usages later on. This should be a non-behavioral-change commit. Part of T91414: Unify link/append between WM operators and BPY context manager API, and cleanup usages of `BKE_library_make_local`.
2021-11-22Link/Append: Move main linking code (from WM) to use new instantiation code ↵Bastien Montagne
in BKE. This removes the last main usage of BLO's instantiation code. Also required some limited refactoring of BKE_blendfile_link_append's instantiation to make it more modular, and usable by both linking and appending code paths. NOTE: This should be a non-behavioral change commit. Part of T91414: Unify link/append between WM operators and BPY context manager API, and cleanup usages of `BKE_library_make_local`.
2021-11-22Link/Append: Move most of core link/append code from WM to new ↵Bastien Montagne
`BKE_blendflie_link_append` module. This will allow to expose all those advanced features of the WM operators to other parts of the code, like the python library context manager, copy/paste code, etc. This is expected to be a strictly no-behavioral-change commit. Part of T91414: Unify link/append between WM operators and BPY context manager API, and cleanup usages of `BKE_library_make_local`. Maniphest Tasks: T91414 Differential Revision: https://developer.blender.org/D13222