Blender Git Commit Log

Git Commits -> Revision 794c282

Revision 794c282 by Bastien Montagne (master)
September 22, 2021, 14:55 (GMT)
Initial implementation of local ID re-use when appending.

This commit adds to ID struct a new optional 'weak reference' to a
linked ID (in the form of a blend file library path and full ID name).

This can then be used on next append to try to find a matching local ID
instead of re-making the linked data local again.

Ref. T90545

NOTE: ID re-use will be disabled for regular append for the time being
(3.0 release), and only used for assets. Therefore, this commit should
not change anything user-wise.

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

Commit Details:

Full Hash: 794c2828af60af02a38381c2a9a81f9046381074
Parent Commit: 707bcd5
Lines Changed: +412, -29

36 Modified Paths:

/source/blender/blenkernel/BKE_idtype.h (+5, -1) (Diff)
/source/blender/blenkernel/BKE_main.h (+26, -0) (Diff)
/source/blender/blenkernel/intern/armature.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/bpath.c (+5, -0) (Diff)
/source/blender/blenkernel/intern/cachefile.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/camera.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/curve.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/font.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/hair.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/idtype.c (+18, -0) (Diff)
/source/blender/blenkernel/intern/image.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/lattice.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/lib_id.c (+7, -0) (Diff)
/source/blender/blenkernel/intern/lib_id_delete.c (+4, -0) (Diff)
/source/blender/blenkernel/intern/light.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/lightprobe.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/linestyle.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/main.c (+202, -0) (Diff)
/source/blender/blenkernel/intern/mask.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/material.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/mball.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/mesh.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/movieclip.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/node.cc (+1, -1) (Diff)
/source/blender/blenkernel/intern/pointcloud.cc (+1, -1) (Diff)
/source/blender/blenkernel/intern/simulation.cc (+1, -1) (Diff)
/source/blender/blenkernel/intern/sound.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/speaker.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/text.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/texture.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/volume.cc (+1, -1) (Diff)
/source/blender/blenkernel/intern/world.c (+1, -1) (Diff)
/source/blender/blenloader/intern/readfile.c (+7, -0) (Diff)
/source/blender/makesdna/DNA_ID.h (+28, -1) (Diff)
/source/blender/makesrna/intern/rna_ID.c (+35, -0) (Diff)
/source/blender/windowmanager/intern/wm_files_link.c (+50, -2) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021