From 92736a7b75920ffe4b8016a2d097ff8e36687c70 Mon Sep 17 00:00:00 2001 From: Dalai Felinto Date: Mon, 19 Aug 2019 14:25:29 -0300 Subject: Per-Viewport Collection Visibility Support per-viewport collection visibility options. Note 1: There is no way to show a collection that was not visible before due to depsgraph. Otherwise we would risk having all the collections in the depsgraph and I believe this is not the idea. An alternative would be to have a new depsgraph for viewports that are not local. Something to keep in mind if we do per-viewport current frame in the future. So for now what we do is to only allow collections visibility to be disabled/hidden in this mode. Note 2: hide_viewport (the eye icon) doesn't really matter for depsgraph. So after the merge we can still ignore it to show the collections locally in a viewport with no problems for the depsgraph. Reviewers: brecht, sergey Subscribers: billreynish Related task: T61327 Differential Revision: https://developer.blender.org/D5611 --- source/blender/blenkernel/BKE_layer.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'source/blender/blenkernel/BKE_layer.h') diff --git a/source/blender/blenkernel/BKE_layer.h b/source/blender/blenkernel/BKE_layer.h index eb65b7641e1..535980840c1 100644 --- a/source/blender/blenkernel/BKE_layer.h +++ b/source/blender/blenkernel/BKE_layer.h @@ -90,6 +90,7 @@ int BKE_layer_collection_findindex(struct ViewLayer *view_layer, const struct La void BKE_main_collection_sync(const struct Main *bmain); void BKE_scene_collection_sync(const struct Scene *scene); void BKE_layer_collection_sync(const struct Scene *scene, struct ViewLayer *view_layer); +void BKE_layer_collection_local_sync(struct ViewLayer *view_layer, struct View3D *v3d); void BKE_main_collection_sync_remap(const struct Main *bmain); @@ -117,6 +118,10 @@ void BKE_layer_collection_isolate(struct Scene *scene, struct ViewLayer *view_layer, struct LayerCollection *lc, bool extend); +void BKE_layer_collection_local_isolate(struct ViewLayer *view_layer, + struct View3D *v3d, + struct LayerCollection *lc, + bool extend); void BKE_layer_collection_set_visible(struct ViewLayer *view_layer, struct LayerCollection *lc, const bool visible, -- cgit v1.2.3