diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-05-04 03:15:01 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-05-04 03:15:01 +0400 |
commit | 48ead2736643cf0327b9472cfd05042a58f9d9b0 (patch) | |
tree | d966adce993fd14472a4ff2a79372da305273fc7 /source/blender/blenkernel/intern/depsgraph.c | |
parent | 5da2135eef39ac042a8c4babcac7be375e6903d2 (diff) |
Camera tracking: switch dopesheet information to lazy calculation
All operators which changes tracking data now just tags dopsheet as outdated,
actual re-calculaiton of happens only when this information is actually needed
(like on dopesheet draw).
This makes things a bit faster when there's no dopesheet visible in current
screen and also makes it much easier to update dopesheet using dependency
graph.
Also renamed dopesheet_sort_order to dopesheet_sort_method in rna and internal
stuff which makes much more sense and also correlated with naming in
file browser.
Diffstat (limited to 'source/blender/blenkernel/intern/depsgraph.c')
-rw-r--r-- | source/blender/blenkernel/intern/depsgraph.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/depsgraph.c b/source/blender/blenkernel/intern/depsgraph.c index d8cdd728c16..75e22195c6a 100644 --- a/source/blender/blenkernel/intern/depsgraph.c +++ b/source/blender/blenkernel/intern/depsgraph.c @@ -72,6 +72,7 @@ #include "BKE_pointcache.h" #include "BKE_scene.h" #include "BKE_screen.h" +#include "BKE_tracking.h" #include "BKE_utildefines.h" #include "depsgraph_private.h" @@ -2580,6 +2581,10 @@ static void dag_id_flush_update(Scene *sce, ID *id) } if (idtype == ID_MC) { + MovieClip *clip = (MovieClip *) id; + + BKE_tracking_dopesheet_tag_update(&clip->tracking); + for (obt=bmain->object.first; obt; obt= obt->id.next) { bConstraint *con; for (con = obt->constraints.first; con; con=con->next) { |