diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2018-04-06 12:21:20 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2018-04-13 15:17:37 +0300 |
commit | a1e2415ed51e2da97e3b182f18f462345a02ce14 (patch) | |
tree | 59d54c64e1e19bde4aab0d79aa2a51a66dabc877 /source/blender/render | |
parent | eec5d3a8a8a26256fbae39d4f1fb01de6a648eea (diff) |
Depsgraph: don't pass evaluation context to update functions.
The depsgraph now contains all the state needed to evaluate it.
Differential Revision: https://developer.blender.org/D3147
Diffstat (limited to 'source/blender/render')
-rw-r--r-- | source/blender/render/extern/include/RE_engine.h | 2 | ||||
-rw-r--r-- | source/blender/render/intern/source/convertblender.c | 8 | ||||
-rw-r--r-- | source/blender/render/intern/source/external_engine.c | 24 |
3 files changed, 4 insertions, 30 deletions
diff --git a/source/blender/render/extern/include/RE_engine.h b/source/blender/render/extern/include/RE_engine.h index 2a1d51158b3..d5230f74316 100644 --- a/source/blender/render/extern/include/RE_engine.h +++ b/source/blender/render/extern/include/RE_engine.h @@ -137,9 +137,7 @@ typedef struct RenderEngine { struct ReportList *reports; /* Depsgraph */ - struct EvaluationContext *eval_ctx; struct Depsgraph *depsgraph; - struct ViewLayer *view_layer; /* for blender internal only */ int update_flag; diff --git a/source/blender/render/intern/source/convertblender.c b/source/blender/render/intern/source/convertblender.c index bb5e68ff3ad..cb3397d9a2e 100644 --- a/source/blender/render/intern/source/convertblender.c +++ b/source/blender/render/intern/source/convertblender.c @@ -5421,7 +5421,7 @@ static void database_fromscene_vectors(EvaluationContext *eval_ctx, /* applies changes fully */ scene->r.cfra += timeoffset; - BKE_scene_graph_update_for_newframe(eval_ctx, eval_ctx->depsgraph, re->main, re->scene, NULL); + BKE_scene_graph_update_for_newframe(eval_ctx->depsgraph, re->main); /* if no camera, viewmat should have been set! */ if (camera) { @@ -5951,11 +5951,7 @@ void RE_Database_Baking(Render *re, Main *bmain, Scene *scene, ViewLayer *view_l Depsgraph *depsgraph = DEG_graph_new(scene, view_layer, DAG_EVAL_RENDER); DEG_evaluation_context_init_from_view_layer_for_render(eval_ctx, depsgraph, scene, view_layer); DEG_graph_build_from_view_layer(depsgraph, bmain, scene, view_layer); - BKE_scene_graph_update_tagged(eval_ctx, - depsgraph, - bmain, - scene, - view_layer); + BKE_scene_graph_update_tagged(depsgraph, bmain); re->flag |= R_BAKING; re->excludeob= actob; diff --git a/source/blender/render/intern/source/external_engine.c b/source/blender/render/intern/source/external_engine.c index 15c8d0d524d..245a49ad5ae 100644 --- a/source/blender/render/intern/source/external_engine.c +++ b/source/blender/render/intern/source/external_engine.c @@ -533,32 +533,16 @@ static void engine_depsgraph_init(RenderEngine *engine, ViewLayer *view_layer) Main *bmain = engine->re->main; Scene *scene = engine->re->scene; - engine->eval_ctx = DEG_evaluation_context_new(DAG_EVAL_RENDER); engine->depsgraph = DEG_graph_new(scene, view_layer, DAG_EVAL_RENDER); - engine->view_layer = view_layer; - DEG_evaluation_context_init_from_view_layer_for_render( - engine->eval_ctx, - engine->depsgraph, - scene, - view_layer); - - BKE_scene_graph_update_tagged( - engine->eval_ctx, - engine->depsgraph, - bmain, - scene, - view_layer); + BKE_scene_graph_update_tagged(engine->depsgraph, bmain); } static void engine_depsgraph_free(RenderEngine *engine) { DEG_graph_free(engine->depsgraph); - DEG_evaluation_context_free(engine->eval_ctx); - engine->eval_ctx = NULL; engine->depsgraph = NULL; - engine->view_layer = NULL; } void RE_engine_frame_set(RenderEngine *engine, int frame, float subframe) @@ -572,11 +556,7 @@ void RE_engine_frame_set(RenderEngine *engine, int frame, float subframe) CLAMP(cfra, MINAFRAME, MAXFRAME); BKE_scene_frame_set(re->scene, cfra); - BKE_scene_graph_update_for_newframe(engine->eval_ctx, - engine->depsgraph, - re->main, - re->scene, - engine->view_layer); + BKE_scene_graph_update_for_newframe(engine->depsgraph, re->main); #ifdef WITH_PYTHON BPy_BEGIN_ALLOW_THREADS; |