Fix ID types DAG update tagging.
authorKévin Dietrich <kevin.dietrich@mailoo.org>
Mon, 8 Aug 2016 15:51:15 +0000 (17:51 +0200)
committerKévin Dietrich <kevin.dietrich@mailoo.org>
Mon, 8 Aug 2016 15:51:15 +0000 (17:51 +0200)
commitb745a2401b6ccf75b1e90cf1c8fa648d99c81e29
tree588ff3dea069e483d0a9c09ae8431b9f445d1cce
parent5e5d3d6391448d30c1946452aeaf3086f28ad875
Fix ID types DAG update tagging.

The first character of the ID type was used to tag IDs for updates which
is weak since different IDs can have the same first character (for
example meshes, materials and metaballs), causing unnecessary updates of
unrelated IDs.

Now we use a unique index per ID type to tag for updates, unifying IDs
arrays indexing along the way.

Reviewers: sergey, mont29

Differential Revision: https://developer.blender.org/D2139
source/blender/blenkernel/BKE_idcode.h
source/blender/blenkernel/BKE_main.h
source/blender/blenkernel/intern/depsgraph.c
source/blender/blenkernel/intern/idcode.c
source/blender/blenkernel/intern/library.c
source/blender/depsgraph/intern/depsgraph_query.cc
source/blender/depsgraph/intern/depsgraph_tag.cc
source/blender/makesdna/DNA_ID.h