Blender Git Loki

Blender Git "undo-experiments-swap-reread-datablocks" branch commits.

Page: 6 / 11

February 6, 2020, 15:51 (GMT)
Merge branch 'master' into readfile_factorize_common_id_processing
February 6, 2020, 15:29 (GMT)
Readfile: refactor/factorize more handling of common ID data.

- 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.

Differential Revision: https://developer.blender.org/D6764
February 6, 2020, 15:24 (GMT)
NodeTree: Add access to the address of an ID's nodetree pointer.
February 6, 2020, 13:08 (GMT)
Merge branch 'master' into undo-experiments
February 5, 2020, 16:52 (GMT)
Better handling of usages of usercount increment in readfile liblink.

Some places could/should still need proper ID refcounting in liblink:
* UI data (spaces) - although this should be strictly 'user one' only...
* Deprectaed data/pointers which are not handled by libquery code.

Not sure whether IPO pointers really need usercount actually...
February 5, 2020, 16:04 (GMT)
Merge branch 'master' into readfile-rework-refcount-handling

Conflicts:
source/blender/blenloader/intern/readfile.c
February 3, 2020, 09:52 (GMT)
readfile: Quick experiment with refcounting moved to libquery.

Having that extra ID users handling at readfile level, besides generic
one ensured by libquery, has been something bothering me for a long time
(had to fix my share of bugs due to mismatches between those two areas).

Further more, work on undo speedup will require even more complex ID
refcount management if we want to keep it in readfile.c area.

So idea is instead to generalize what we did for linked data already
when undoing: recompute properly usercount numbers after liblink step,
for all IDs.

Note that extra time required here is neglectable in a whole .blend file
reading (few extra milliseconds when loading a full production scene
e.g.).
February 1, 2020, 18:44 (GMT)
Merge branch 'undo-experiments' into undo-experiments-swap-reread-datablocks
February 1, 2020, 18:43 (GMT)
Merge branch 'master' into undo-experiments
February 1, 2020, 18:43 (GMT)
Refactor readfile's liblink code.

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.

Differential Revision: https://developer.blender.org/D6727
January 31, 2020, 15:12 (GMT)
undoexp: WIP work towards getting rid of double mapping for undo.
January 31, 2020, 14:55 (GMT)
undoexp: cleanup: move/tweak assert re undo direction value.
January 31, 2020, 14:49 (GMT)
undoexp: remove forced barrier when undoing from a non-memfile step.

Given that we are now 'smartly' handling and using recalc flags of IDs,
this forced 'undo barrier' **should** not be needed anymore. Yay!
January 31, 2020, 13:48 (GMT)
Merge branch 'undo-experiments' into undo-experiments-swap-reread-datablocks
January 31, 2020, 13:47 (GMT)
Merge branch 'master' into undo-experiments-swap-reread-datablocks
January 31, 2020, 13:47 (GMT)
Merge branch 'master' into undo-experiments
January 31, 2020, 13:46 (GMT)
Merge branch 'undo-experiments' into undo-experiments-swap-reread-datablocks
January 31, 2020, 13:46 (GMT)
undoexp: Fix issue with usual infamous pose's bone pointers.
January 31, 2020, 13:45 (GMT)
undoexp: cleanup typo.
January 31, 2020, 11:09 (GMT)
undoexp: cleanup typo.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021