Blender Git Commit Log

Git Commits -> Revision 43111cd

July 30, 2021, 14:56 (GMT)
LayerCollections: Add a way to prevent their resync with Collection hierarchy.

This is an easy & safe, yet not-so-nice way to address the
LayerCollections vs. Collections hierarchy resync problem.

Currently this resync is enforced everytime something changes in the
Collections hierarchy, which is extremely inneficient, and can even
produce 'loss' of LayerCollection data during complex Collection
processes.

Current example is during Library Overrides resync process. New code:
* Makes resync significantly faster (between 10 and 15%).
* Fixes 'disappearing' layer collections settings on sub-collections'
layers.

NOTE: This is not a proper fix for the underlying issue. However,
implementing and testing the 'lazy update' solution as proposed by
{T73411} requires a significant amount of time (especially in testing
and tracking all places where code would need to ensure LayerCollections
are up-to-date), which is not possible currently.

Differential Revision: https://developer.blender.org/D11889

Commit Details:

Full Hash: 43111cdfdfd4e9dd4fe90e667116aef99ef1574a
Parent Commit: e7694f6
Committed By: Fabian Schempp
Lines Changed: +63, -0

3 Modified Paths:

/source/blender/blenkernel/BKE_layer.h (+3, -0) (Diff)
/source/blender/blenkernel/intern/layer.c (+53, -0) (Diff)
/source/blender/blenkernel/intern/lib_override.c (+7, -0) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021