Motion paths: Use minimal possible dependency graph

This change makes it so motion paths are using minimal possible
dependency graph which is sufficient to evaluate required motion
path targets.

Disclaimer: granularity is done on ID level, but it is possible
to go more granular if really needed.

Brings time down to 0.5 sec when updating motion path for the
Rain animation file used for benchmarks in the previous commits.

Reviewers: brecht

Differential Revision: https://developer.blender.org/D5874
This commit is contained in:
2019-09-20 17:38:32 +02:00
parent eb2ed0ea7a
commit 615d5fa2fb
4 changed files with 77 additions and 27 deletions

View File

@@ -845,6 +845,11 @@ typedef enum eAnimvizCalcRange {
ANIMVIZ_CALC_RANGE_FULL,
} eAnimvizCalcRange;
struct Depsgraph *animviz_depsgraph_build(struct Main *bmain,
struct Scene *scene,
struct ViewLayer *view_layer,
struct ListBase *targets);
void animviz_calc_motionpaths(struct Depsgraph *depsgraph,
struct Main *bmain,
struct Scene *scene,