|
Blender
V2.93
|
Go to the source code of this file.
Classes | |
| struct | ObjectsVisibleIteratorData |
| struct | ObjectsInModeIteratorData |
| struct | ObjectsInViewLayerParams |
| struct | ObjectsInModeParams |
Typedefs | |
| typedef enum eViewLayerCopyMethod | eViewLayerCopyMethod |
| typedef struct ObjectsVisibleIteratorData | ObjectsVisibleIteratorData |
Enumerations | |
| enum | eViewLayerCopyMethod { VIEWLAYER_ADD_NEW = 0 , VIEWLAYER_ADD_EMPTY = 1 , VIEWLAYER_ADD_COPY = 2 } |
| #define BKE_view_layer_array_from_bases_in_edit_mode | ( | view_layer, | |
| v3d, | |||
| r_len | |||
| ) | BKE_view_layer_array_from_bases_in_mode(view_layer, v3d, r_len, {.object_mode = OB_MODE_EDIT}) |
Definition at line 423 of file BKE_layer.h.
| #define BKE_view_layer_array_from_bases_in_edit_mode_unique_data | ( | view_layer, | |
| v3d, | |||
| r_len | |||
| ) |
Definition at line 430 of file BKE_layer.h.
| #define BKE_view_layer_array_from_bases_in_mode | ( | view_layer, | |
| v3d, | |||
| r_len, | |||
| ... | |||
| ) |
Definition at line 411 of file BKE_layer.h.
| #define BKE_view_layer_array_from_objects_in_edit_mode | ( | view_layer, | |
| v3d, | |||
| r_len | |||
| ) | BKE_view_layer_array_from_objects_in_mode(view_layer, v3d, r_len, {.object_mode = OB_MODE_EDIT}) |
Definition at line 420 of file BKE_layer.h.
| #define BKE_view_layer_array_from_objects_in_edit_mode_unique_data | ( | view_layer, | |
| v3d, | |||
| r_len | |||
| ) |
Definition at line 426 of file BKE_layer.h.
| #define BKE_view_layer_array_from_objects_in_edit_mode_unique_data_with_uvs | ( | view_layer, | |
| v3d, | |||
| r_len | |||
| ) |
Definition at line 434 of file BKE_layer.h.
| #define BKE_view_layer_array_from_objects_in_mode | ( | view_layer, | |
| v3d, | |||
| r_len, | |||
| ... | |||
| ) |
Definition at line 407 of file BKE_layer.h.
| #define BKE_view_layer_array_from_objects_in_mode_unique_data | ( | view_layer, | |
| v3d, | |||
| r_len, | |||
| mode | |||
| ) |
Definition at line 444 of file BKE_layer.h.
| #define BKE_view_layer_array_selected_objects | ( | view_layer, | |
| v3d, | |||
| r_len, | |||
| ... | |||
| ) |
Definition at line 383 of file BKE_layer.h.
| #define FOREACH_BASE_IN_EDIT_MODE_BEGIN | ( | _view_layer, | |
| _v3d, | |||
| _instance | |||
| ) | FOREACH_BASE_IN_MODE_BEGIN (_view_layer, _v3d, -1, OB_MODE_EDIT, _instance) |
Definition at line 275 of file BKE_layer.h.
| #define FOREACH_BASE_IN_EDIT_MODE_END FOREACH_BASE_IN_MODE_END |
Definition at line 278 of file BKE_layer.h.
| #define FOREACH_BASE_IN_MODE_BEGIN | ( | _view_layer, | |
| _v3d, | |||
| _object_type, | |||
| _object_mode, | |||
| _instance | |||
| ) |
Definition at line 254 of file BKE_layer.h.
| #define FOREACH_BASE_IN_MODE_END |
Definition at line 270 of file BKE_layer.h.
| #define FOREACH_OBJECT_BEGIN | ( | view_layer, | |
| _instance | |||
| ) |
Definition at line 324 of file BKE_layer.h.
| #define FOREACH_OBJECT_END |
Definition at line 331 of file BKE_layer.h.
| #define FOREACH_OBJECT_FLAG_BEGIN | ( | scene, | |
| _view_layer, | |||
| _v3d, | |||
| flag, | |||
| _instance | |||
| ) |
Definition at line 336 of file BKE_layer.h.
| #define FOREACH_OBJECT_FLAG_END |
Definition at line 360 of file BKE_layer.h.
| #define FOREACH_OBJECT_IN_EDIT_MODE_BEGIN | ( | _view_layer, | |
| _v3d, | |||
| _instance | |||
| ) |
Definition at line 288 of file BKE_layer.h.
| #define FOREACH_OBJECT_IN_EDIT_MODE_END |
Definition at line 292 of file BKE_layer.h.
| #define FOREACH_OBJECT_IN_MODE_BEGIN | ( | _view_layer, | |
| _v3d, | |||
| _object_type, | |||
| _object_mode, | |||
| _instance | |||
| ) |
Definition at line 280 of file BKE_layer.h.
| #define FOREACH_OBJECT_IN_MODE_END |
Definition at line 284 of file BKE_layer.h.
| #define FOREACH_SELECTED_BASE_BEGIN | ( | view_layer, | |
| _instance | |||
| ) |
Definition at line 296 of file BKE_layer.h.
| #define FOREACH_SELECTED_BASE_END ITER_END |
Definition at line 304 of file BKE_layer.h.
| #define FOREACH_SELECTED_EDITABLE_OBJECT_BEGIN | ( | _view_layer, | |
| _v3d, | |||
| _instance | |||
| ) |
Definition at line 218 of file BKE_layer.h.
| #define FOREACH_SELECTED_EDITABLE_OBJECT_END |
Definition at line 231 of file BKE_layer.h.
| #define FOREACH_SELECTED_OBJECT_BEGIN | ( | _view_layer, | |
| _v3d, | |||
| _instance | |||
| ) |
Definition at line 200 of file BKE_layer.h.
| #define FOREACH_SELECTED_OBJECT_END |
Definition at line 213 of file BKE_layer.h.
| #define FOREACH_VISIBLE_BASE_BEGIN | ( | _view_layer, | |
| _v3d, | |||
| _instance | |||
| ) |
Definition at line 306 of file BKE_layer.h.
| #define FOREACH_VISIBLE_BASE_END |
Definition at line 319 of file BKE_layer.h.
| #define FOREACH_VISIBLE_OBJECT_BEGIN | ( | _view_layer, | |
| _v3d, | |||
| _instance | |||
| ) |
Definition at line 236 of file BKE_layer.h.
| #define FOREACH_VISIBLE_OBJECT_END |
Definition at line 249 of file BKE_layer.h.
| #define TODO_LAYER /* generic todo */ |
Definition at line 33 of file BKE_layer.h.
| #define TODO_LAYER_OPERATORS /* collection mamanger and property panel operators */ |
Definition at line 32 of file BKE_layer.h.
| #define TODO_LAYER_OVERRIDE /* CollectionOverride */ |
Definition at line 31 of file BKE_layer.h.
| typedef enum eViewLayerCopyMethod eViewLayerCopyMethod |
| typedef struct ObjectsVisibleIteratorData ObjectsVisibleIteratorData |
| enum eViewLayerCopyMethod |
| Enumerator | |
|---|---|
| VIEWLAYER_ADD_NEW | |
| VIEWLAYER_ADD_EMPTY | |
| VIEWLAYER_ADD_COPY | |
Definition at line 49 of file BKE_layer.h.
| void BKE_base_eval_flags | ( | struct Base * | base | ) |
Definition at line 1831 of file layer.c.
References BASE_ENABLED_RENDER, BASE_ENABLED_VIEWPORT, BASE_HIDDEN, BASE_SELECTABLE, BASE_SELECTED, BASE_VISIBLE_DEPSGRAPH, BASE_VISIBLE_VIEWLAYER, Base::flag, Base::flag_from_collection, g_base_collection_flags, OB_RESTRICT_RENDER, OB_RESTRICT_SELECT, OB_RESTRICT_VIEWPORT, Base::object, and Object::restrictflag.
Referenced by BKE_layer_collection_sync(), and BKE_object_eval_eval_base_flags().
| void BKE_base_set_visible | ( | struct Scene * | scene, |
| struct ViewLayer * | view_layer, | ||
| struct Base * | base, | ||
| bool | extend | ||
| ) |
Definition at line 1110 of file layer.c.
References BASE_HIDDEN, BKE_layer_collection_sync(), Base::flag, LISTBASE_FOREACH, ViewLayer::object_bases, and scene.
| bool BKE_layer_collection_activate | ( | struct ViewLayer * | view_layer, |
| struct LayerCollection * | lc | ||
| ) |
Definition at line 638 of file layer.c.
References ViewLayer::active_collection, LayerCollection::flag, and LAYER_COLLECTION_EXCLUDE.
Referenced by BKE_layer_collection_isolate_global(), tree_element_layer_collection_activate(), and tree_element_master_collection_activate().
| struct LayerCollection* BKE_layer_collection_activate_parent | ( | ViewLayer * | view_layer, |
| LayerCollection * | lc | ||
| ) |
Activate first parent collection
Definition at line 651 of file layer.c.
References ViewLayer::active_collection, BKE_layer_collection_activate_parent(), BKE_layer_collection_first_from_scene_collection(), CollectionParent::collection, LayerCollection::collection, ListBase::first, layer_collection_hidden(), ViewLayer::layer_collections, NULL, and Collection::parents.
Referenced by BKE_layer_collection_activate_parent(), BKE_layer_collection_sync(), collection_instance_add_exec(), and collection_instance_exec().
| int BKE_layer_collection_count | ( | ViewLayer * | view_layer | ) |
Get the total number of collections (including all the nested collections)
Definition at line 692 of file layer.c.
References collection_count(), and ViewLayer::layer_collections.
| int BKE_layer_collection_findindex | ( | struct ViewLayer * | view_layer, |
| const struct LayerCollection * | lc | ||
| ) |
Referenced by ED_collection_hide_menu_draw().
| struct LayerCollection* BKE_layer_collection_first_from_scene_collection | ( | struct ViewLayer * | view_layer, |
| const struct Collection * | collection | ||
| ) |
| struct LayerCollection* BKE_layer_collection_from_index | ( | ViewLayer * | view_layer, |
| const int | index | ||
| ) |
Get the collection for a given index
Definition at line 621 of file layer.c.
References collection_from_index(), and ViewLayer::layer_collections.
Referenced by object_hide_collection_exec().
| struct LayerCollection* BKE_layer_collection_get_active | ( | ViewLayer * | view_layer | ) |
Get the active collection
Definition at line 630 of file layer.c.
References ViewLayer::active_collection.
Referenced by add_collections_to_scene(), add_loose_object_data_to_scene(), add_loose_objects_to_scene(), bc_add_object(), BKE_object_add(), BKE_object_add_for_data(), collection_instance_add_exec(), collection_instance_exec(), CTX_data_layer_collection(), import_endjob(), and object_add_duplicate_internal().
| bool BKE_layer_collection_has_layer_collection | ( | struct LayerCollection * | lc_parent, |
| struct LayerCollection * | lc_child | ||
| ) |
Definition at line 1092 of file layer.c.
References BKE_layer_collection_has_layer_collection(), LayerCollection::layer_collections, and LISTBASE_FOREACH.
Referenced by BKE_layer_collection_has_layer_collection(), BKE_layer_collection_isolate_global(), BKE_layer_collection_isolate_local(), and outliner_collection_isolate_flag().
| bool BKE_layer_collection_has_selected_objects | ( | struct ViewLayer * | view_layer, |
| struct LayerCollection * | lc | ||
| ) |
Definition at line 1067 of file layer.c.
References BASE_SELECTED, BASE_VISIBLE_DEPSGRAPH, BKE_layer_collection_has_selected_objects(), BKE_view_layer_base_find(), LayerCollection::collection, COLLECTION_RESTRICT_SELECT, Collection::flag, Base::flag, LayerCollection::flag, Collection::gobject, LAYER_COLLECTION_EXCLUDE, LayerCollection::layer_collections, and LISTBASE_FOREACH.
Referenced by BKE_layer_collection_has_selected_objects(), and ED_collection_hide_menu_draw().
| void BKE_layer_collection_isolate_global | ( | Scene * | scene, |
| ViewLayer * | view_layer, | ||
| LayerCollection * | lc, | ||
| bool | extend | ||
| ) |
Isolate the collection - hide all other collections but this one. Make sure to show all the direct parents and all children of the layer collection as well. When extending we simply show the collections and its direct family.
If the collection or any of its parents is disabled, make it enabled. Don't change the children disable state though.
Definition at line 1206 of file layer.c.
References BKE_layer_collection_activate(), BKE_layer_collection_has_layer_collection(), BKE_layer_collection_sync(), ListBase::first, LayerCollection::flag, layer_collection_flag_set_recursive(), layer_collection_flag_unset_recursive(), LAYER_COLLECTION_HIDE, LAYER_COLLECTION_VISIBLE_VIEW_LAYER, LayerCollection::layer_collections, ViewLayer::layer_collections, LISTBASE_FOREACH, LayerCollection::runtime_flag, and scene.
Referenced by collection_isolate_exec(), and object_hide_collection_exec().
| void BKE_layer_collection_isolate_local | ( | struct ViewLayer * | view_layer, |
| const struct View3D * | v3d, | ||
| struct LayerCollection * | lc, | ||
| bool | extend | ||
| ) |
Referenced by object_hide_collection_exec().
Referenced by ED_view3d_local_collections_reset(), and object_hide_collection_exec().
| void BKE_layer_collection_local_sync_all | ( | const struct Main * | bmain | ) |
| bool BKE_layer_collection_objects_select | ( | ViewLayer * | view_layer, |
| LayerCollection * | lc, | ||
| bool | deselect | ||
| ) |
Select all the objects of this layer collection
It also select the objects that are in nested collections.
Definition at line 1031 of file layer.c.
References BASE_SELECTABLE, BASE_SELECTED, BKE_layer_collection_objects_select(), BKE_view_layer_base_find(), LayerCollection::collection, COLLECTION_RESTRICT_SELECT, Collection::flag, Base::flag, LayerCollection::flag, Collection::gobject, LAYER_COLLECTION_EXCLUDE, LayerCollection::layer_collections, and LISTBASE_FOREACH.
Referenced by BKE_collection_objects_select(), BKE_layer_collection_objects_select(), and collection_objects_select_exec().
| void BKE_layer_collection_set_flag | ( | struct LayerCollection * | lc, |
| const int | flag, | ||
| const bool | value | ||
| ) |
Definition at line 1477 of file layer.c.
References layer_collection_flag_recursive_set().
Referenced by collection_view_layer_exec(), and outliner_unhide_all_exec().
| void BKE_layer_collection_set_visible | ( | ViewLayer * | view_layer, |
| LayerCollection * | lc, | ||
| const bool | visible, | ||
| const bool | hierarchy | ||
| ) |
Hide/show all the elements of a collection. Don't change the collection children enable/disable state, but it may change it for the collection itself.
Definition at line 1414 of file layer.c.
References LayerCollection::flag, layer_collection_bases_hide_recursive(), layer_collection_bases_show_recursive(), layer_collection_flag_set_recursive(), layer_collection_flag_unset_recursive(), and LAYER_COLLECTION_HIDE.
Referenced by collection_visibility_exec(), and outliner_hide_exec().
Referenced by collection_flag_exec(), collection_isolate_exec(), collection_view_layer_exec(), collection_visibility_exec(), object_hide_view_clear_exec(), object_hide_view_set_exec(), outliner_hide_exec(), outliner_object_set_flag_recursive_fn(), outliner_unhide_all_exec(), and set_preview_visibility().
| void BKE_layer_eval_view_layer_indexed | ( | struct Depsgraph * | depsgraph, |
| struct Scene * | scene, | ||
| int | view_layer_index | ||
| ) |
Definition at line 1879 of file layer.c.
References BLI_assert, BLI_findlink(), depsgraph, layer_eval_view_layer(), NULL, scene, ObjectsInModeIteratorData::view_layer, and Scene::view_layers.
| void BKE_main_collection_sync | ( | const struct Main * | bmain | ) |
Referenced by BKE_collection_add(), BKE_collection_add_from_collection(), BKE_collection_add_from_object(), BKE_collection_child_add(), BKE_collection_child_remove(), BKE_collection_delete(), BKE_collection_duplicate(), BKE_collection_move(), BKE_collection_object_add(), BKE_collection_object_add_from(), BKE_collection_object_remove(), BKE_collections_after_lib_link(), BKE_scene_duplicate(), lib_override_library_create_post_process(), lib_relocate_do(), and scene_collections_object_remove().
| void BKE_main_collection_sync_remap | ( | const struct Main * | bmain | ) |
Referenced by drw_draw_depth_loop_impl(), DRW_draw_render_loop_ex(), and DRW_draw_select_loop().
| void BKE_scene_collection_sync | ( | const struct Scene * | scene | ) |
See if the object is in any of the scene layers of the scene
Definition at line 1527 of file layer.c.
References BKE_view_layer_base_find(), LISTBASE_FOREACH, scene, and Scene::view_layers.
Referenced by scene_drop_invoke().
| struct ViewLayer* BKE_view_layer_add | ( | Scene * | scene, |
| const char * | name, | ||
| ViewLayer * | view_layer_source, | ||
| const int | type | ||
| ) |
Add a new view layer by default, a view layer has the master collection
Definition at line 200 of file layer.c.
References BKE_layer_collection_sync(), BKE_view_layer_copy_data(), BLI_addtail(), BLI_strncpy_utf8(), BLI_uniquename(), DATA_, ListBase::first, layer_collection_exclude_all(), ViewLayer::layer_collections, MEM_callocN, ViewLayer::name, scene, type, view_layer_add(), Scene::view_layers, VIEWLAYER_ADD_COPY, VIEWLAYER_ADD_EMPTY, and VIEWLAYER_ADD_NEW.
Referenced by do_version_layers_to_collections(), scene_init_data(), and view_layer_add_exec().
| struct ViewLayerAOV* BKE_view_layer_add_aov | ( | struct ViewLayer * | view_layer | ) |
Definition at line 2034 of file layer.c.
References AOV_TYPE_COLOR, ViewLayer::aovs, BLI_addtail(), BLI_strncpy(), DATA_, MEM_callocN, ViewLayerAOV::name, ViewLayerAOV::type, viewlayer_aov_active_set(), and viewlayer_aov_make_name_unique().
Referenced by blender::bke::tests::TEST(), and view_layer_add_aov_exec().
| struct Base** BKE_view_layer_array_from_bases_in_mode_params | ( | struct ViewLayer * | view_layer, |
| const struct View3D * | v3d, | ||
| uint * | r_len, | ||
| const struct ObjectsInModeParams * | params | ||
| ) |
| struct Object** BKE_view_layer_array_from_objects_in_mode_params | ( | struct ViewLayer * | view_layer, |
| const struct View3D * | v3d, | ||
| uint * | len, | ||
| const struct ObjectsInModeParams * | params | ||
| ) |
| struct Object** BKE_view_layer_array_selected_objects_params | ( | struct ViewLayer * | view_layer, |
| const struct View3D * | v3d, | ||
| uint * | r_len, | ||
| const struct ObjectsInViewLayerParams * | params | ||
| ) |
Definition at line 41 of file layer_utils.c.
References BLI_array_append, BLI_array_declare, BLI_array_len, FOREACH_SELECTED_OBJECT_BEGIN, FOREACH_SELECTED_OBJECT_END, id, LIB_TAG_DOIT, MEM_mallocN, MEM_reallocN, NULL, params, and ID::tag.
| void BKE_view_layer_base_deselect_all | ( | struct ViewLayer * | view_layer | ) |
Definition at line 403 of file layer.c.
References BASE_SELECTED, ListBase::first, Base::flag, Base::next, and ViewLayer::object_bases.
Referenced by BKE_copybuffer_paste(), BKE_object_add_for_data(), do_outliner_item_activate_tree_element(), do_outliner_item_mode_toggle_generic(), DocumentImporter::import(), import_endjob(), make_local_exec(), object_add_common(), object_transfer_mode_to_base(), select_marker_camera_switch(), tree_element_object_activate(), and wm_link_append_exec().
Definition at line 394 of file layer.c.
References BLI_ghash_lookup(), ViewLayer::object_bases_hash, and view_layer_bases_hash_create().
Referenced by add_collections_to_scene(), add_hook_object_new(), bake_object_check(), bc_add_object(), BKE_layer_collection_has_selected_objects(), BKE_layer_collection_objects_select(), BKE_object_add(), BKE_object_add_for_data(), BKE_object_add_from(), BKE_object_pose_armature_get_visible(), BKE_object_pose_base_array_get_ex(), BKE_scene_has_object(), collection_objects_select(), createTransObject(), CTX_data_active_base(), ctx_data_base_collection_get(), do_outliner_item_activate_tree_element(), do_outliner_item_mode_toggle_generic(), do_version_layers_to_collections(), duplibase_for_convert(), ED_armature_pose_select_in_wpaint_mode(), ED_object_jump_to_object(), ed_object_posemode_set_for_weight_paint_ex(), ED_outliner_give_base_under_cursor(), ED_undo_object_set_active_or_warn(), EDBM_edge_find_nearest(), EDBM_face_find_nearest(), EDBM_vert_find_nearest(), editselect_buf_cache_init(), element_should_draw_faded(), getTransformOrientation_ex(), gpencil_layer_to_curve(), import_endjob(), jump_to_target_ptr(), layer_collection_bases_hide_recursive(), layer_collection_bases_show_recursive(), layer_collection_local_sync(), make_local_all__instance_indirect_unused(), make_object_duplilist_real(), object_add_duplicate_internal(), object_base_instance_init(), object_batch_delete_hierarchy_fn(), object_deselect_fn(), object_preview_scene_create(), object_select_fn(), object_select_mirror_exec(), object_transfer_mode_to_base(), outliner_base_or_object_pointer_create(), outliner_draw_restrictbuts(), outliner_draw_tree_element(), outliner_element_visible_get(), outliner_hide_find_data_to_edit(), outliner_item_mode_toggle(), outliner_object_set_flag_recursive_fn(), outliner_select_sync_from_object(), outliner_select_sync_to_object(), parent_drop_allowed(), scene_drop_invoke(), screen_set_3dview_camera(), select_grouped_object_hooks(), select_grouped_parent(), select_marker_camera_switch(), set_trans_object_base_flags(), transform_object_deform_pose_armature_get(), tree_element_object_activate(), tree_element_pose_state_get(), and validate_object_select_id().
| void BKE_view_layer_base_select_and_set_active | ( | struct ViewLayer * | view_layer, |
| struct Base * | selbase | ||
| ) |
Definition at line 412 of file layer.c.
References ViewLayer::basact, BASE_SELECTABLE, BASE_SELECTED, and Base::flag.
Referenced by bc_add_object(), BKE_object_add(), BKE_object_add_for_data(), BKE_object_add_from(), do_outliner_item_mode_toggle_generic(), import_endjob(), and object_transfer_mode_to_base().
| void BKE_view_layer_bases_in_mode_iterator_begin | ( | BLI_Iterator * | iter, |
| void * | data_in | ||
| ) |
Definition at line 1766 of file layer.c.
References base_is_in_mode(), BKE_base_is_visible(), BKE_view_layer_bases_in_mode_iterator_next(), BLI_assert, BLI_Iterator::current, BLI_Iterator::data, data, NULL, Base::object, Object::type, and BLI_Iterator::valid.
| void BKE_view_layer_bases_in_mode_iterator_end | ( | BLI_Iterator * | iter | ) |
| void BKE_view_layer_bases_in_mode_iterator_next | ( | BLI_Iterator * | iter | ) |
Definition at line 1792 of file layer.c.
References base_is_in_mode(), BKE_base_is_visible(), BLI_Iterator::current, BLI_Iterator::data, data, Base::next, and BLI_Iterator::valid.
Referenced by BKE_view_layer_bases_in_mode_iterator_begin().
| void BKE_view_layer_blend_read_data | ( | struct BlendDataReader * | reader, |
| struct ViewLayer * | view_layer | ||
| ) |
Definition at line 1937 of file layer.c.
References ViewLayer::active_aov, ViewLayer::active_collection, ViewLayer::aovs, ViewLayer::basact, BLI_listbase_clear(), BLO_read_data_address, BLO_read_list(), direct_link_layer_collections(), ViewLayer::drawdata, ViewLayer::freestyle_config, ViewLayer::id_properties, IDP_BlendDataRead, ViewLayer::layer_collections, FreestyleConfig::linesets, FreestyleConfig::modules, NULL, ViewLayer::object_bases, ViewLayer::object_bases_array, ViewLayer::object_bases_hash, ViewLayer::stats, and ObjectsInModeIteratorData::view_layer.
Referenced by BKE_collection_blend_read_data(), and scene_blend_read_data().
| void BKE_view_layer_blend_read_lib | ( | struct BlendLibReader * | reader, |
| struct Library * | lib, | ||
| struct ViewLayer * | view_layer | ||
| ) |
Definition at line 1976 of file layer.c.
References ViewLayer::basact, BLI_freelinkN(), BLO_read_id_address, ViewLayer::freestyle_config, ViewLayer::id_properties, IDP_BlendReadLib(), ViewLayer::layer_collections, lib, lib_link_layer_collection(), FreestyleConfig::linesets, LISTBASE_FOREACH, LISTBASE_FOREACH_MUTABLE, ViewLayer::mat_override, FreestyleConfig::modules, NULL, ViewLayer::object_bases, and ObjectsInModeIteratorData::view_layer.
Referenced by BKE_collection_blend_read_lib(), and scene_blend_read_lib().
| void BKE_view_layer_blend_write | ( | struct BlendWriter * | writer, |
| struct ViewLayer * | view_layer | ||
| ) |
Definition at line 1898 of file layer.c.
References ViewLayer::aovs, BLO_write_struct, BLO_write_struct_list, ViewLayer::freestyle_config, ViewLayer::id_properties, IDP_BlendWrite(), ViewLayer::layer_collections, FreestyleConfig::linesets, LISTBASE_FOREACH, FreestyleConfig::modules, ViewLayer::object_bases, ObjectsInModeIteratorData::view_layer, and write_layer_collections().
Referenced by scene_blend_write().
Fallback for when a Scene has no camera to use
| view_layer | in general you want to use the same ViewLayer that is used for depsgraph. If rendering you pass the scene active layer, when viewing in the viewport you want to get ViewLayer from context. |
Definition at line 337 of file layer.c.
References LISTBASE_FOREACH, NULL, OB_CAMERA, and ViewLayer::object_bases.
Referenced by check_valid_camera(), check_valid_compositing_camera(), screen_set_3dview_camera(), and view_camera_exec().
Referenced by BKE_scene_base_iter_next(), and render_init_from_main().
| void BKE_view_layer_copy_data | ( | struct Scene * | scene_dst, |
| const struct Scene * | scene_src, | ||
| struct ViewLayer * | view_layer_dst, | ||
| const struct ViewLayer * | view_layer_src, | ||
| const int | flag | ||
| ) |
Referenced by scene_copy_data().
Referenced by _setlooper_base_step(), BKE_scene_base_iter_next(), blender::deg::DepsgraphNodeBuilder::build_scene_sequencer(), blender::deg::DepsgraphRelationBuilder::build_scene_sequencer(), blender::deg::DepsgraphNodeBuilder::build_view_layer(), blender::deg::DepsgraphRelationBuilder::build_view_layer(), check_valid_camera(), check_valid_compositing_camera(), render_init_depsgraph(), seq_prefetch_init_depsgraph(), and seq_render_scene_strip().
| bool BKE_view_layer_filter_edit_mesh_has_edges | ( | struct Object * | ob, |
| void * | user_data | ||
| ) |
| bool BKE_view_layer_filter_edit_mesh_has_uvs | ( | struct Object * | ob, |
| void * | user_data | ||
| ) |
| struct ViewLayer* BKE_view_layer_find_from_collection | ( | const struct Scene * | scene, |
| struct LayerCollection * | lc | ||
| ) |
Referenced by tree_element_layer_collection_activate().
| struct ViewLayer* BKE_view_layer_find_with_aov | ( | struct Scene * | scene, |
| struct ViewLayerAOV * | view_layer_aov | ||
| ) |
Definition at line 2123 of file layer.c.
References BLI_findindex(), LISTBASE_FOREACH, NULL, scene, and Scene::view_layers.
| void BKE_view_layer_free | ( | struct ViewLayer * | view_layer | ) |
Definition at line 254 of file layer.c.
References BKE_view_layer_free_ex().
Referenced by ED_scene_view_layer_delete().
| void BKE_view_layer_free_ex | ( | ViewLayer * | view_layer, |
| const bool | do_id_user | ||
| ) |
Free (or release) any data used by this ViewLayer.
Definition at line 262 of file layer.c.
References ViewLayer::active_aov, ViewLayer::aovs, ViewLayer::basact, BKE_freestyle_config_free(), BLI_freelistN(), BLI_ghash_free(), ViewLayer::drawdata, ViewLayer::freestyle_config, ViewLayer::id_properties, IDP_FreeProperty_ex(), layer_collection_free(), ViewLayer::layer_collections, LISTBASE_FOREACH, MEM_freeN, MEM_SAFE_FREE, NULL, ViewLayer::object_bases, ViewLayer::object_bases_array, ViewLayer::object_bases_hash, and ViewLayer::stats.
Referenced by BKE_view_layer_free(), and scene_free_data().
| bool BKE_view_layer_has_collection | ( | struct ViewLayer * | view_layer, |
| const struct Collection * | collection | ||
| ) |
| bool BKE_view_layer_has_valid_aov | ( | struct ViewLayer * | view_layer | ) |
Definition at line 2113 of file layer.c.
References AOV_CONFLICT, ViewLayer::aovs, and LISTBASE_FOREACH.
Referenced by blender::bke::tests::TEST(), and blender::bke::tests::test_render_pass_conflict().
| struct Object* BKE_view_layer_non_active_selected_object | ( | struct ViewLayer * | view_layer, |
| const struct View3D * | v3d | ||
| ) |
Use this in rare cases we need to detect a pair of objects (active, selected). This returns the other non-active selected object.
Returns NULL with it finds multiple other selected objects as behavior in this case would be random from the user perspective.
Definition at line 202 of file layer_utils.c.
References FOREACH_SELECTED_OBJECT_BEGIN, FOREACH_SELECTED_OBJECT_END, NULL, and OBACT.
Referenced by gpencil_bake_mesh_animation_exec(), and gpencil_trace_image_exec().
| void BKE_view_layer_remove_aov | ( | struct ViewLayer * | view_layer, |
| struct ViewLayerAOV * | aov | ||
| ) |
Definition at line 2046 of file layer.c.
References ViewLayer::active_aov, ViewLayer::aovs, BLI_assert, BLI_findindex(), BLI_freelinkN(), ViewLayerAOV::next, NULL, ViewLayerAOV::prev, and viewlayer_aov_active_set().
Referenced by blender::bke::tests::TEST(), and view_layer_remove_aov_exec().
| void BKE_view_layer_rename | ( | struct Main * | bmain, |
| struct Scene * | scene, | ||
| struct ViewLayer * | view_layer, | ||
| const char * | name | ||
| ) |
Definition at line 522 of file layer.c.
References BKE_animdata_fix_paths_rename_all(), BLI_findindex(), BLI_strncpy(), BLI_strncpy_utf8(), BLI_uniquename(), CMP_NODE_R_LAYERS, DATA_, DEG_id_tag_update(), ListBase::first, Scene::id, LISTBASE_FOREACH, ViewLayer::name, node, NODE_MAXSTR, bNodeTree::nodes, Scene::nodetree, NULL, scene, STREQ, STRNCPY, Scene::view_layers, wmWindowManager::windows, and Main::wm.
Referenced by blo_update_defaults_scene(), and namebutton_fn().
| void BKE_view_layer_selected_bases_iterator_begin | ( | BLI_Iterator * | iter, |
| void * | data_in | ||
| ) |
Definition at line 1718 of file layer.c.
References BASE_SELECTED, BASE_VISIBLE_DEPSGRAPH, and objects_iterator_begin().
| void BKE_view_layer_selected_bases_iterator_end | ( | BLI_Iterator * | iter | ) |
Definition at line 1728 of file layer.c.
References object_bases_iterator_end().
| void BKE_view_layer_selected_bases_iterator_next | ( | BLI_Iterator * | iter | ) |
Definition at line 1723 of file layer.c.
References BASE_SELECTED, BASE_VISIBLE_DEPSGRAPH, and object_bases_iterator_next().
| void BKE_view_layer_selected_editable_objects_iterator_begin | ( | BLI_Iterator * | iter, |
| void * | data_in | ||
| ) |
Definition at line 1684 of file layer.c.
References BASE_SELECTED, BASE_VISIBLE_DEPSGRAPH, BKE_object_is_libdata(), BKE_view_layer_selected_editable_objects_iterator_next(), BLI_Iterator::current, objects_iterator_begin(), and BLI_Iterator::valid.
| void BKE_view_layer_selected_editable_objects_iterator_end | ( | BLI_Iterator * | iter | ) |
Definition at line 1707 of file layer.c.
References objects_iterator_end().
| void BKE_view_layer_selected_editable_objects_iterator_next | ( | BLI_Iterator * | iter | ) |
Definition at line 1698 of file layer.c.
References BASE_SELECTED, BASE_VISIBLE_DEPSGRAPH, BKE_object_is_libdata(), BLI_Iterator::current, objects_iterator_next(), and BLI_Iterator::valid.
Referenced by BKE_view_layer_selected_editable_objects_iterator_begin().
| void BKE_view_layer_selected_objects_iterator_begin | ( | BLI_Iterator * | iter, |
| void * | data_in | ||
| ) |
Definition at line 1642 of file layer.c.
References BASE_SELECTED, BASE_VISIBLE_DEPSGRAPH, and objects_iterator_begin().
| void BKE_view_layer_selected_objects_iterator_end | ( | BLI_Iterator * | iter | ) |
Definition at line 1652 of file layer.c.
References objects_iterator_end().
| void BKE_view_layer_selected_objects_iterator_next | ( | BLI_Iterator * | iter | ) |
Definition at line 1647 of file layer.c.
References BASE_SELECTED, BASE_VISIBLE_DEPSGRAPH, and objects_iterator_next().
| void BKE_view_layer_selected_objects_tag | ( | ViewLayer * | view_layer, |
| const int | tag | ||
| ) |
Tag all the selected objects of a render-layer.
Definition at line 305 of file layer.c.
References BASE_SELECTED, LISTBASE_FOREACH, and ViewLayer::object_bases.
Referenced by make_single_user_exec().
| void BKE_view_layer_set_active_aov | ( | struct ViewLayer * | view_layer, |
| struct ViewLayerAOV * | aov | ||
| ) |
Definition at line 2061 of file layer.c.
References viewlayer_aov_active_set().
| void BKE_view_layer_verify_aov | ( | struct RenderEngine * | engine, |
| struct Scene * | scene, | ||
| struct ViewLayer * | view_layer | ||
| ) |
Definition at line 2095 of file layer.c.
References AOV_CONFLICT, ViewLayer::aovs, bke_view_layer_verify_aov_cb(), BLI_ghash_free(), BLI_ghash_lookup(), BLI_ghash_str_new(), count, LISTBASE_FOREACH, MEM_freeN, NULL, POINTER_AS_INT, RE_engine_update_render_passes(), scene, SET_FLAG_FROM_TEST, and viewlayer_aov_make_name_unique().
Referenced by blender::bke::tests::TEST(), blender::bke::tests::test_render_pass_conflict(), view_layer_add_aov_exec(), and view_layer_remove_aov_exec().
| void BKE_view_layer_visible_bases_iterator_begin | ( | BLI_Iterator * | iter, |
| void * | data_in | ||
| ) |
Definition at line 1739 of file layer.c.
References object_bases_iterator_begin().
| void BKE_view_layer_visible_bases_iterator_end | ( | BLI_Iterator * | iter | ) |
Definition at line 1749 of file layer.c.
References object_bases_iterator_end().
| void BKE_view_layer_visible_bases_iterator_next | ( | BLI_Iterator * | iter | ) |
Definition at line 1744 of file layer.c.
References object_bases_iterator_next().
| void BKE_view_layer_visible_objects_iterator_begin | ( | BLI_Iterator * | iter, |
| void * | data_in | ||
| ) |
Definition at line 1663 of file layer.c.
References objects_iterator_begin().
| void BKE_view_layer_visible_objects_iterator_end | ( | BLI_Iterator * | iter | ) |
Definition at line 1673 of file layer.c.
References objects_iterator_end().
| void BKE_view_layer_visible_objects_iterator_next | ( | BLI_Iterator * | iter | ) |
Definition at line 1668 of file layer.c.
References objects_iterator_next().