diff options
Diffstat (limited to 'source/blender/depsgraph/intern/builder/deg_builder_relations_view_layer.cc')
-rw-r--r-- | source/blender/depsgraph/intern/builder/deg_builder_relations_view_layer.cc | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations_view_layer.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations_view_layer.cc index 99295a733fc..f575be9f659 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder_relations_view_layer.cc +++ b/source/blender/depsgraph/intern/builder/deg_builder_relations_view_layer.cc @@ -69,6 +69,14 @@ extern "C" { namespace DEG { +void DepsgraphRelationBuilder::build_layer_collections(ListBase *lb) +{ + for (LayerCollection *lc = (LayerCollection *)lb->first; lc; lc = lc->next) { + build_collection(NULL, lc->collection); + build_layer_collections(&lc->layer_collections); + } +} + void DepsgraphRelationBuilder::build_view_layer(Scene *scene, ViewLayer *view_layer) { /* Setup currently building context. */ @@ -81,6 +89,9 @@ void DepsgraphRelationBuilder::build_view_layer(Scene *scene, ViewLayer *view_la LISTBASE_FOREACH (Base *, base, &view_layer->object_bases) { build_object(base, base->object); } + + build_layer_collections(&view_layer->layer_collections); + if (scene->camera != NULL) { build_object(NULL, scene->camera); } |