diff options
Diffstat (limited to 'source/blender/draw')
24 files changed, 216 insertions, 216 deletions
diff --git a/source/blender/draw/DRW_engine.h b/source/blender/draw/DRW_engine.h index e96aec0766f..da7524754de 100644 --- a/source/blender/draw/DRW_engine.h +++ b/source/blender/draw/DRW_engine.h @@ -36,7 +36,7 @@ struct DrawEngineType; struct IDProperty; struct bContext; struct Object; -struct SceneLayer; +struct ViewLayer; struct ViewContext; struct ViewportEngineData; struct View3D; diff --git a/source/blender/draw/engines/clay/clay_engine.c b/source/blender/draw/engines/clay/clay_engine.c index 760ecab12d3..fe81e1e484c 100644 --- a/source/blender/draw/engines/clay/clay_engine.c +++ b/source/blender/draw/engines/clay/clay_engine.c @@ -144,11 +144,11 @@ typedef struct CLAY_Data { CLAY_StorageList *stl; } CLAY_Data; -typedef struct CLAY_SceneLayerData { +typedef struct CLAY_ViewLayerData { struct GPUTexture *jitter_tx; struct GPUUniformBuffer *sampling_ubo; int cached_sample_num; -} CLAY_SceneLayerData; +} CLAY_ViewLayerData; /* *********** STATIC *********** */ @@ -187,20 +187,20 @@ typedef struct CLAY_PrivateData { /* Functions */ -static void clay_scene_layer_data_free(void *storage) +static void clay_view_layer_data_free(void *storage) { - CLAY_SceneLayerData *sldata = (CLAY_SceneLayerData *)storage; + CLAY_ViewLayerData *sldata = (CLAY_ViewLayerData *)storage; DRW_UBO_FREE_SAFE(sldata->sampling_ubo); DRW_TEXTURE_FREE_SAFE(sldata->jitter_tx); } -static CLAY_SceneLayerData *CLAY_scene_layer_data_get(void) +static CLAY_ViewLayerData *CLAY_view_layer_data_get(void) { - CLAY_SceneLayerData **sldata = (CLAY_SceneLayerData **)DRW_scene_layer_engine_data_get(&draw_engine_clay_type, &clay_scene_layer_data_free); + CLAY_ViewLayerData **sldata = (CLAY_ViewLayerData **)DRW_view_layer_engine_data_get(&draw_engine_clay_type, &clay_view_layer_data_free); if (*sldata == NULL) { - *sldata = MEM_callocN(sizeof(**sldata), "CLAY_SceneLayerData"); + *sldata = MEM_callocN(sizeof(**sldata), "CLAY_ViewLayerData"); } return *sldata; @@ -326,7 +326,7 @@ static void CLAY_engine_init(void *vedata) { CLAY_StorageList *stl = ((CLAY_Data *)vedata)->stl; CLAY_FramebufferList *fbl = ((CLAY_Data *)vedata)->fbl; - CLAY_SceneLayerData *sldata = CLAY_scene_layer_data_get(); + CLAY_ViewLayerData *sldata = CLAY_view_layer_data_get(); /* Create Texture Array */ if (!e_data.matcap_array) { @@ -424,9 +424,9 @@ static void CLAY_engine_init(void *vedata) /* SSAO setup */ { const DRWContextState *draw_ctx = DRW_context_state_get(); - SceneLayer *scene_layer = draw_ctx->scene_layer; - IDProperty *props = BKE_scene_layer_engine_evaluated_get( - scene_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_CLAY); + ViewLayer *view_layer = draw_ctx->view_layer; + IDProperty *props = BKE_view_layer_engine_evaluated_get( + view_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_CLAY); int ssao_samples = BKE_collection_engine_property_value_get_int(props, "ssao_samples"); float invproj[4][4]; @@ -497,7 +497,7 @@ static void CLAY_engine_init(void *vedata) static DRWShadingGroup *CLAY_shgroup_create(CLAY_Data *vedata, DRWPass *pass, int *material_id, bool use_flat) { CLAY_StorageList *stl = vedata->stl; - CLAY_SceneLayerData *sldata = CLAY_scene_layer_data_get(); + CLAY_ViewLayerData *sldata = CLAY_view_layer_data_get(); DRWShadingGroup *grp = DRW_shgroup_create(use_flat ? e_data.clay_flat_sh : e_data.clay_sh, pass); DRW_shgroup_uniform_vec2(grp, "screenres", DRW_viewport_size_get(), 1); @@ -885,7 +885,7 @@ static void CLAY_layer_collection_settings_create(RenderEngine *UNUSED(engine), BKE_collection_engine_property_add_float(props, "hair_brightness_randomness", 0.0f); } -static void CLAY_scene_layer_settings_create(RenderEngine *UNUSED(engine), IDProperty *props) +static void CLAY_view_layer_settings_create(RenderEngine *UNUSED(engine), IDProperty *props) { BLI_assert(props && props->type == IDP_GROUP && @@ -923,7 +923,7 @@ RenderEngineType DRW_engine_viewport_clay_type = { CLAY_ENGINE, N_("Clay"), RE_INTERNAL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, &CLAY_layer_collection_settings_create, - &CLAY_scene_layer_settings_create, + &CLAY_view_layer_settings_create, &draw_engine_clay_type, {NULL, NULL, NULL} }; diff --git a/source/blender/draw/engines/eevee/eevee_bloom.c b/source/blender/draw/engines/eevee/eevee_bloom.c index 5aef1dc966c..63c030a574f 100644 --- a/source/blender/draw/engines/eevee/eevee_bloom.c +++ b/source/blender/draw/engines/eevee/eevee_bloom.c @@ -80,7 +80,7 @@ static void eevee_create_shader_bloom(void) "#define HIGH_QUALITY\n"); } -int EEVEE_bloom_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +int EEVEE_bloom_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_StorageList *stl = vedata->stl; EEVEE_FramebufferList *fbl = vedata->fbl; @@ -88,8 +88,8 @@ int EEVEE_bloom_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) EEVEE_EffectsInfo *effects = stl->effects; const DRWContextState *draw_ctx = DRW_context_state_get(); - SceneLayer *scene_layer = draw_ctx->scene_layer; - IDProperty *props = BKE_scene_layer_engine_evaluated_get(scene_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); + ViewLayer *view_layer = draw_ctx->view_layer; + IDProperty *props = BKE_view_layer_engine_evaluated_get(view_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); if (BKE_collection_engine_property_value_get_bool(props, "bloom_enable")) { const float *viewport_size = DRW_viewport_size_get(); @@ -225,7 +225,7 @@ static DRWShadingGroup *eevee_create_bloom_pass( return grp; } -void EEVEE_bloom_cache_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_bloom_cache_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_StorageList *stl = vedata->stl; diff --git a/source/blender/draw/engines/eevee/eevee_data.c b/source/blender/draw/engines/eevee/eevee_data.c index 149a3740411..6b95844591d 100644 --- a/source/blender/draw/engines/eevee/eevee_data.c +++ b/source/blender/draw/engines/eevee/eevee_data.c @@ -22,16 +22,16 @@ /** \file eevee_data.c * \ingroup draw_engine * - * All specific data handler for Objects, Lights, SceneLayers, ... + * All specific data handler for Objects, Lights, ViewLayers, ... */ #include "DRW_render.h" #include "eevee_private.h" -static void eevee_scene_layer_data_free(void *storage) +static void eevee_view_layer_data_free(void *storage) { - EEVEE_SceneLayerData *sldata = (EEVEE_SceneLayerData *)storage; + EEVEE_ViewLayerData *sldata = (EEVEE_ViewLayerData *)storage; /* Lights */ MEM_SAFE_FREE(sldata->lamps); @@ -78,13 +78,13 @@ static void eevee_lightprobe_data_free(void *storage) BLI_freelistN(&ped->captured_object_list); } -EEVEE_SceneLayerData *EEVEE_scene_layer_data_get(void) +EEVEE_ViewLayerData *EEVEE_view_layer_data_get(void) { - EEVEE_SceneLayerData **sldata = (EEVEE_SceneLayerData **)DRW_scene_layer_engine_data_get( - &draw_engine_eevee_type, &eevee_scene_layer_data_free); + EEVEE_ViewLayerData **sldata = (EEVEE_ViewLayerData **)DRW_view_layer_engine_data_get( + &draw_engine_eevee_type, &eevee_view_layer_data_free); if (*sldata == NULL) { - *sldata = MEM_callocN(sizeof(**sldata), "EEVEE_SceneLayerData"); + *sldata = MEM_callocN(sizeof(**sldata), "EEVEE_ViewLayerData"); } return *sldata; diff --git a/source/blender/draw/engines/eevee/eevee_depth_of_field.c b/source/blender/draw/engines/eevee/eevee_depth_of_field.c index eaf4767f4a0..ef7e6412fc4 100644 --- a/source/blender/draw/engines/eevee/eevee_depth_of_field.c +++ b/source/blender/draw/engines/eevee/eevee_depth_of_field.c @@ -74,7 +74,7 @@ static void eevee_create_shader_depth_of_field(void) datatoc_effect_dof_frag_glsl, "#define STEP_RESOLVE\n"); } -int EEVEE_depth_of_field_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +int EEVEE_depth_of_field_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_StorageList *stl = vedata->stl; EEVEE_FramebufferList *fbl = vedata->fbl; @@ -82,8 +82,8 @@ int EEVEE_depth_of_field_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data * EEVEE_EffectsInfo *effects = stl->effects; const DRWContextState *draw_ctx = DRW_context_state_get(); - SceneLayer *scene_layer = draw_ctx->scene_layer; - IDProperty *props = BKE_scene_layer_engine_evaluated_get(scene_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); + ViewLayer *view_layer = draw_ctx->view_layer; + IDProperty *props = BKE_view_layer_engine_evaluated_get(view_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); if (BKE_collection_engine_property_value_get_bool(props, "dof_enable")) { Scene *scene = draw_ctx->scene; @@ -183,7 +183,7 @@ int EEVEE_depth_of_field_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data * return 0; } -void EEVEE_depth_of_field_cache_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_depth_of_field_cache_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_StorageList *stl = vedata->stl; diff --git a/source/blender/draw/engines/eevee/eevee_effects.c b/source/blender/draw/engines/eevee/eevee_effects.c index 1c486073818..703369a86ee 100644 --- a/source/blender/draw/engines/eevee/eevee_effects.c +++ b/source/blender/draw/engines/eevee/eevee_effects.c @@ -105,7 +105,7 @@ static void eevee_create_shader_downsample(void) "#define COPY_DEPTH\n"); } -void EEVEE_effects_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata) +void EEVEE_effects_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata) { EEVEE_StorageList *stl = vedata->stl; EEVEE_FramebufferList *fbl = vedata->fbl; @@ -207,7 +207,7 @@ void EEVEE_effects_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata) } } -void EEVEE_effects_cache_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_effects_cache_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_StorageList *stl = vedata->stl; diff --git a/source/blender/draw/engines/eevee/eevee_engine.c b/source/blender/draw/engines/eevee/eevee_engine.c index 72ebfe94f16..2378a3c8784 100644 --- a/source/blender/draw/engines/eevee/eevee_engine.c +++ b/source/blender/draw/engines/eevee/eevee_engine.c @@ -50,7 +50,7 @@ static void EEVEE_engine_init(void *ved) EEVEE_TextureList *txl = vedata->txl; EEVEE_FramebufferList *fbl = vedata->fbl; EEVEE_StorageList *stl = ((EEVEE_Data *)vedata)->stl; - EEVEE_SceneLayerData *sldata = EEVEE_scene_layer_data_get(); + EEVEE_ViewLayerData *sldata = EEVEE_view_layer_data_get(); if (!stl->g_data) { /* Alloc transient pointers */ @@ -85,7 +85,7 @@ static void EEVEE_engine_init(void *ved) static void EEVEE_cache_init(void *vedata) { EEVEE_PassList *psl = ((EEVEE_Data *)vedata)->psl; - EEVEE_SceneLayerData *sldata = EEVEE_scene_layer_data_get(); + EEVEE_ViewLayerData *sldata = EEVEE_view_layer_data_get(); EEVEE_bloom_cache_init(sldata, vedata); EEVEE_depth_of_field_cache_init(sldata, vedata); @@ -103,7 +103,7 @@ static void EEVEE_cache_init(void *vedata) static void EEVEE_cache_populate(void *vedata, Object *ob) { - EEVEE_SceneLayerData *sldata = EEVEE_scene_layer_data_get(); + EEVEE_ViewLayerData *sldata = EEVEE_view_layer_data_get(); const DRWContextState *draw_ctx = DRW_context_state_get(); const bool is_active = (ob == draw_ctx->obact); @@ -153,7 +153,7 @@ static void EEVEE_cache_populate(void *vedata, Object *ob) static void EEVEE_cache_finish(void *vedata) { - EEVEE_SceneLayerData *sldata = EEVEE_scene_layer_data_get(); + EEVEE_ViewLayerData *sldata = EEVEE_view_layer_data_get(); EEVEE_materials_cache_finish(vedata); EEVEE_lights_cache_finish(sldata); @@ -165,7 +165,7 @@ static void EEVEE_draw_scene(void *vedata) EEVEE_PassList *psl = ((EEVEE_Data *)vedata)->psl; EEVEE_StorageList *stl = ((EEVEE_Data *)vedata)->stl; EEVEE_FramebufferList *fbl = ((EEVEE_Data *)vedata)->fbl; - EEVEE_SceneLayerData *sldata = EEVEE_scene_layer_data_get(); + EEVEE_ViewLayerData *sldata = EEVEE_view_layer_data_get(); /* Default framebuffer and texture */ DefaultTextureList *dtxl = DRW_viewport_texture_list_get(); @@ -312,7 +312,7 @@ static void EEVEE_layer_collection_settings_create(RenderEngine *UNUSED(engine), UNUSED_VARS_NDEBUG(props); } -static void EEVEE_scene_layer_settings_create(RenderEngine *UNUSED(engine), IDProperty *props) +static void EEVEE_view_layer_settings_create(RenderEngine *UNUSED(engine), IDProperty *props) { BLI_assert(props && props->type == IDP_GROUP && @@ -400,7 +400,7 @@ RenderEngineType DRW_engine_viewport_eevee_type = { NULL, NULL, EEVEE_ENGINE, N_("Eevee"), RE_INTERNAL | RE_USE_SHADING_NODES, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - &EEVEE_layer_collection_settings_create, &EEVEE_scene_layer_settings_create, + &EEVEE_layer_collection_settings_create, &EEVEE_view_layer_settings_create, &draw_engine_eevee_type, {NULL, NULL, NULL} }; diff --git a/source/blender/draw/engines/eevee/eevee_lightprobes.c b/source/blender/draw/engines/eevee/eevee_lightprobes.c index a8b9b963cb1..73eaeaa3f07 100644 --- a/source/blender/draw/engines/eevee/eevee_lightprobes.c +++ b/source/blender/draw/engines/eevee/eevee_lightprobes.c @@ -126,7 +126,7 @@ static void planar_pool_ensure_alloc(EEVEE_Data *vedata, int num_planar_ref) /* TODO get screen percentage from layer setting */ // const DRWContextState *draw_ctx = DRW_context_state_get(); - // SceneLayer *scene_layer = draw_ctx->scene_layer; + // ViewLayer *view_layer = draw_ctx->view_layer; float screen_percentage = 1.0f; int width = (int)(viewport_size[0] * screen_percentage); @@ -157,11 +157,11 @@ static void planar_pool_ensure_alloc(EEVEE_Data *vedata, int num_planar_ref) } } -void EEVEE_lightprobes_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *UNUSED(vedata)) +void EEVEE_lightprobes_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *UNUSED(vedata)) { const DRWContextState *draw_ctx = DRW_context_state_get(); - SceneLayer *scene_layer = draw_ctx->scene_layer; - IDProperty *props = BKE_scene_layer_engine_evaluated_get(scene_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); + ViewLayer *view_layer = draw_ctx->view_layer; + IDProperty *props = BKE_view_layer_engine_evaluated_get(view_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); /* Shaders */ if (!e_data.probe_filter_glossy_sh) { @@ -333,7 +333,7 @@ void EEVEE_lightprobes_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *UNUSED(ved } } -void EEVEE_lightprobes_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata) +void EEVEE_lightprobes_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata) { EEVEE_TextureList *txl = vedata->txl; EEVEE_PassList *psl = vedata->psl; @@ -472,7 +472,7 @@ void EEVEE_lightprobes_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *veda } } -void EEVEE_lightprobes_cache_add(EEVEE_SceneLayerData *sldata, Object *ob) +void EEVEE_lightprobes_cache_add(EEVEE_ViewLayerData *sldata, Object *ob) { EEVEE_LightProbesInfo *pinfo = sldata->probes; LightProbe *probe = (LightProbe *)ob->data; @@ -529,7 +529,7 @@ static void scale_m4_v3(float R[4][4], float v[3]) mul_v3_v3(R[i], v); } -static void EEVEE_planar_reflections_updates(EEVEE_SceneLayerData *sldata, EEVEE_StorageList *stl) +static void EEVEE_planar_reflections_updates(EEVEE_ViewLayerData *sldata, EEVEE_StorageList *stl) { EEVEE_LightProbesInfo *pinfo = sldata->probes; Object *ob; @@ -634,7 +634,7 @@ static void EEVEE_planar_reflections_updates(EEVEE_SceneLayerData *sldata, EEVEE } } -static void EEVEE_lightprobes_updates(EEVEE_SceneLayerData *sldata, EEVEE_PassList *psl, EEVEE_StorageList *stl) +static void EEVEE_lightprobes_updates(EEVEE_ViewLayerData *sldata, EEVEE_PassList *psl, EEVEE_StorageList *stl) { EEVEE_LightProbesInfo *pinfo = sldata->probes; Object *ob; @@ -761,7 +761,7 @@ static void EEVEE_lightprobes_updates(EEVEE_SceneLayerData *sldata, EEVEE_PassLi } } -void EEVEE_lightprobes_cache_finish(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata) +void EEVEE_lightprobes_cache_finish(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata) { EEVEE_StorageList *stl = vedata->stl; EEVEE_LightProbesInfo *pinfo = sldata->probes; @@ -870,7 +870,7 @@ static void downsample_planar(void *vedata, int level) } /* Glossy filter probe_rt to probe_pool at index probe_idx */ -static void glossy_filter_probe(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata, EEVEE_PassList *psl, int probe_idx) +static void glossy_filter_probe(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, EEVEE_PassList *psl, int probe_idx) { EEVEE_LightProbesInfo *pinfo = sldata->probes; @@ -943,7 +943,7 @@ static void glossy_filter_probe(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata } /* Diffuse filter probe_rt to irradiance_pool at index probe_idx */ -static void diffuse_filter_probe(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata, EEVEE_PassList *psl, int offset) +static void diffuse_filter_probe(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, EEVEE_PassList *psl, int offset) { EEVEE_LightProbesInfo *pinfo = sldata->probes; @@ -991,7 +991,7 @@ static void diffuse_filter_probe(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedat /* Render the scene to the probe_rt texture. */ static void render_scene_to_probe( - EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata, + EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, const float pos[3], float clipsta, float clipend) { EEVEE_TextureList *txl = vedata->txl; @@ -1101,7 +1101,7 @@ static void render_scene_to_probe( } static void render_scene_to_planar( - EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata, int layer, + EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, int layer, float (*viewmat)[4], float (*persmat)[4], float clip_plane[4]) { @@ -1183,7 +1183,7 @@ static void render_scene_to_planar( DRW_framebuffer_texture_detach(txl->planar_depth); } -static void render_world_to_probe(EEVEE_SceneLayerData *sldata, EEVEE_PassList *psl) +static void render_world_to_probe(EEVEE_ViewLayerData *sldata, EEVEE_PassList *psl) { EEVEE_LightProbesInfo *pinfo = sldata->probes; float winmat[4][4], wininv[4][4]; @@ -1253,7 +1253,7 @@ static void lightprobe_cell_world_location_get(EEVEE_LightGrid *egrid, float loc add_v3_v3(r_pos, tmp); } -void EEVEE_lightprobes_refresh(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata) +void EEVEE_lightprobes_refresh(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata) { EEVEE_TextureList *txl = vedata->txl; EEVEE_PassList *psl = vedata->psl; diff --git a/source/blender/draw/engines/eevee/eevee_lights.c b/source/blender/draw/engines/eevee/eevee_lights.c index 17295713001..2293b4208ad 100644 --- a/source/blender/draw/engines/eevee/eevee_lights.c +++ b/source/blender/draw/engines/eevee/eevee_lights.c @@ -72,15 +72,15 @@ extern char datatoc_concentric_samples_lib_glsl[]; /* *********** FUNCTIONS *********** */ -void EEVEE_lights_init(EEVEE_SceneLayerData *sldata) +void EEVEE_lights_init(EEVEE_ViewLayerData *sldata) { const unsigned int shadow_ubo_size = sizeof(EEVEE_Shadow) * MAX_SHADOW + sizeof(EEVEE_ShadowCube) * MAX_SHADOW_CUBE + sizeof(EEVEE_ShadowCascade) * MAX_SHADOW_CASCADE; const DRWContextState *draw_ctx = DRW_context_state_get(); - SceneLayer *scene_layer = draw_ctx->scene_layer; - IDProperty *props = BKE_scene_layer_engine_evaluated_get(scene_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); + ViewLayer *view_layer = draw_ctx->view_layer; + IDProperty *props = BKE_view_layer_engine_evaluated_get(view_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); if (!e_data.shadow_sh) { e_data.shadow_sh = DRW_shader_create( @@ -169,7 +169,7 @@ void EEVEE_lights_init(EEVEE_SceneLayerData *sldata) } } -void EEVEE_lights_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_PassList *psl) +void EEVEE_lights_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_PassList *psl) { EEVEE_LampsInfo *linfo = sldata->lamps; @@ -244,7 +244,7 @@ void EEVEE_lights_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_PassList *psl) BLI_freelistN(&sldata->shadow_casters); } -void EEVEE_lights_cache_add(EEVEE_SceneLayerData *sldata, Object *ob) +void EEVEE_lights_cache_add(EEVEE_ViewLayerData *sldata, Object *ob) { EEVEE_LampsInfo *linfo = sldata->lamps; @@ -327,7 +327,7 @@ void EEVEE_lights_cache_add(EEVEE_SceneLayerData *sldata, Object *ob) /* Add a shadow caster to the shadowpasses */ void EEVEE_lights_cache_shcaster_add( - EEVEE_SceneLayerData *sldata, EEVEE_PassList *psl, struct Gwn_Batch *geom, float (*obmat)[4]) + EEVEE_ViewLayerData *sldata, EEVEE_PassList *psl, struct Gwn_Batch *geom, float (*obmat)[4]) { DRWShadingGroup *grp = DRW_shgroup_instance_create(e_data.shadow_sh, psl->shadow_cube_pass, geom); DRW_shgroup_uniform_block(grp, "shadow_render_block", sldata->shadow_render_ubo); @@ -341,7 +341,7 @@ void EEVEE_lights_cache_shcaster_add( } void EEVEE_lights_cache_shcaster_material_add( - EEVEE_SceneLayerData *sldata, EEVEE_PassList *psl, struct GPUMaterial *gpumat, + EEVEE_ViewLayerData *sldata, EEVEE_PassList *psl, struct GPUMaterial *gpumat, struct Gwn_Batch *geom, struct Object *ob, float (*obmat)[4], float *alpha_threshold) { DRWShadingGroup *grp = DRW_shgroup_material_instance_create(gpumat, psl->shadow_cube_pass, geom, ob); @@ -366,7 +366,7 @@ void EEVEE_lights_cache_shcaster_material_add( DRW_shgroup_set_instance_count(grp, MAX_CASCADE_NUM); } -void EEVEE_lights_cache_finish(EEVEE_SceneLayerData *sldata) +void EEVEE_lights_cache_finish(EEVEE_ViewLayerData *sldata) { EEVEE_LampsInfo *linfo = sldata->lamps; DRWTextureFormat shadow_pool_format = DRW_TEX_R_32; @@ -862,7 +862,7 @@ static void light_tag_shadow_update(Object *lamp, Object *ob) } } -static void eevee_lights_shcaster_updated(EEVEE_SceneLayerData *sldata, Object *ob) +static void eevee_lights_shcaster_updated(EEVEE_ViewLayerData *sldata, Object *ob) { Object *lamp; EEVEE_LampsInfo *linfo = sldata->lamps; @@ -874,7 +874,7 @@ static void eevee_lights_shcaster_updated(EEVEE_SceneLayerData *sldata, Object * } } -void EEVEE_lights_update(EEVEE_SceneLayerData *sldata) +void EEVEE_lights_update(EEVEE_ViewLayerData *sldata) { EEVEE_LampsInfo *linfo = sldata->lamps; Object *ob; @@ -911,7 +911,7 @@ void EEVEE_lights_update(EEVEE_SceneLayerData *sldata) } /* this refresh lamps shadow buffers */ -void EEVEE_draw_shadows(EEVEE_SceneLayerData *sldata, EEVEE_PassList *psl) +void EEVEE_draw_shadows(EEVEE_ViewLayerData *sldata, EEVEE_PassList *psl) { EEVEE_LampsInfo *linfo = sldata->lamps; Object *ob; diff --git a/source/blender/draw/engines/eevee/eevee_materials.c b/source/blender/draw/engines/eevee/eevee_materials.c index 4a9633b4f44..62e2cd3805c 100644 --- a/source/blender/draw/engines/eevee/eevee_materials.c +++ b/source/blender/draw/engines/eevee/eevee_materials.c @@ -348,7 +348,7 @@ static char *eevee_get_volume_defines(int options) * ssr_id can be null to disable ssr contribution. **/ static void add_standard_uniforms( - DRWShadingGroup *shgrp, EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata, + DRWShadingGroup *shgrp, EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, int *ssr_id, float *refract_depth, bool use_ssrefraction, bool use_alpha_blend) { if (ssr_id == NULL || !vedata->stl->g_data->valid_double_buffer) { @@ -764,7 +764,7 @@ struct GPUMaterial *EEVEE_material_hair_get( * Create a default shading group inside the given pass. **/ static struct DRWShadingGroup *EEVEE_default_shading_group_create( - EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata, DRWPass *pass, + EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, DRWPass *pass, bool is_hair, bool is_flat_normal, bool use_blend, bool use_ssr, int shadow_method) { static int ssr_id; @@ -792,7 +792,7 @@ static struct DRWShadingGroup *EEVEE_default_shading_group_create( * Create a default shading group inside the default pass without standard uniforms. **/ static struct DRWShadingGroup *EEVEE_default_shading_group_get( - EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata, + EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, bool is_hair, bool is_flat_normal, bool use_ssr, int shadow_method) { static int ssr_id; @@ -826,8 +826,8 @@ void EEVEE_materials_cache_init(EEVEE_Data *vedata) { const DRWContextState *draw_ctx = DRW_context_state_get(); - SceneLayer *scene_layer = draw_ctx->scene_layer; - IDProperty *props = BKE_scene_layer_engine_evaluated_get(scene_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); + ViewLayer *view_layer = draw_ctx->view_layer; + IDProperty *props = BKE_view_layer_engine_evaluated_get(view_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); /* Global AO Switch*/ stl->effects->use_ao = BKE_collection_engine_property_value_get_bool(props, "gtao_enable"); stl->effects->use_bent_normals = BKE_collection_engine_property_value_get_bool(props, "gtao_use_bent_normals"); @@ -963,7 +963,7 @@ typedef struct EeveeMaterialShadingGroups { } EeveeMaterialShadingGroups; static void material_opaque( - Material *ma, GHash *material_hash, EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata, + Material *ma, GHash *material_hash, EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, bool do_cull, bool use_flat_nor, struct GPUMaterial **gpumat, struct GPUMaterial **gpumat_depth, struct DRWShadingGroup **shgrp, struct DRWShadingGroup **shgrp_depth, struct DRWShadingGroup **shgrp_depth_clip) { @@ -1094,7 +1094,7 @@ static void material_opaque( } static void material_transparent( - Material *ma, EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata, + Material *ma, EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, bool do_cull, bool use_flat_nor, struct GPUMaterial **gpumat, struct DRWShadingGroup **shgrp, struct DRWShadingGroup **shgrp_depth) { const DRWContextState *draw_ctx = DRW_context_state_get(); @@ -1182,7 +1182,7 @@ static void material_transparent( } } -void EEVEE_materials_cache_populate(EEVEE_Data *vedata, EEVEE_SceneLayerData *sldata, Object *ob) +void EEVEE_materials_cache_populate(EEVEE_Data *vedata, EEVEE_ViewLayerData *sldata, Object *ob) { EEVEE_PassList *psl = ((EEVEE_Data *)vedata)->psl; EEVEE_StorageList *stl = ((EEVEE_Data *)vedata)->stl; diff --git a/source/blender/draw/engines/eevee/eevee_motion_blur.c b/source/blender/draw/engines/eevee/eevee_motion_blur.c index b9ec1f8b186..43aaec1b4ba 100644 --- a/source/blender/draw/engines/eevee/eevee_motion_blur.c +++ b/source/blender/draw/engines/eevee/eevee_motion_blur.c @@ -110,18 +110,18 @@ static void eevee_create_shader_motion_blur(void) e_data.motion_blur_sh = DRW_shader_create_fullscreen(datatoc_effect_motion_blur_frag_glsl, NULL); } -int EEVEE_motion_blur_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +int EEVEE_motion_blur_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_StorageList *stl = vedata->stl; EEVEE_EffectsInfo *effects = stl->effects; const DRWContextState *draw_ctx = DRW_context_state_get(); - SceneLayer *scene_layer = draw_ctx->scene_layer; + ViewLayer *view_layer = draw_ctx->view_layer; Scene *scene = draw_ctx->scene; View3D *v3d = draw_ctx->v3d; RegionView3D *rv3d = draw_ctx->rv3d; ARegion *ar = draw_ctx->ar; - IDProperty *props = BKE_scene_layer_engine_evaluated_get(scene_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); + IDProperty *props = BKE_view_layer_engine_evaluated_get(view_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); if (BKE_collection_engine_property_value_get_bool(props, "motion_blur_enable") && (draw_ctx->evil_C != NULL)) { /* Update Motion Blur Matrices */ @@ -162,7 +162,7 @@ int EEVEE_motion_blur_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *ved return 0; } -void EEVEE_motion_blur_cache_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_motion_blur_cache_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_StorageList *stl = vedata->stl; diff --git a/source/blender/draw/engines/eevee/eevee_occlusion.c b/source/blender/draw/engines/eevee/eevee_occlusion.c index a6b35ce1b16..c1dde385284 100644 --- a/source/blender/draw/engines/eevee/eevee_occlusion.c +++ b/source/blender/draw/engines/eevee/eevee_occlusion.c @@ -60,7 +60,7 @@ static void eevee_create_shader_occlusion(void) MEM_freeN(frag_str); } -int EEVEE_occlusion_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +int EEVEE_occlusion_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_StorageList *stl = vedata->stl; EEVEE_FramebufferList *fbl = vedata->fbl; @@ -68,8 +68,8 @@ int EEVEE_occlusion_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedat EEVEE_EffectsInfo *effects = stl->effects; const DRWContextState *draw_ctx = DRW_context_state_get(); - SceneLayer *scene_layer = draw_ctx->scene_layer; - IDProperty *props = BKE_scene_layer_engine_evaluated_get(scene_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); + ViewLayer *view_layer = draw_ctx->view_layer; + IDProperty *props = BKE_view_layer_engine_evaluated_get(view_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); if (BKE_collection_engine_property_value_get_bool(props, "gtao_enable")) { const float *viewport_size = DRW_viewport_size_get(); @@ -142,7 +142,7 @@ int EEVEE_occlusion_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedat return 0; } -void EEVEE_occlusion_cache_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_occlusion_cache_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_StorageList *stl = vedata->stl; @@ -193,7 +193,7 @@ void EEVEE_occlusion_cache_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data } } -void EEVEE_occlusion_compute(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_occlusion_compute(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_TextureList *txl = vedata->txl; @@ -221,7 +221,7 @@ void EEVEE_occlusion_compute(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *v } } -void EEVEE_occlusion_draw_debug(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_occlusion_draw_debug(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_FramebufferList *fbl = vedata->fbl; diff --git a/source/blender/draw/engines/eevee/eevee_private.h b/source/blender/draw/engines/eevee/eevee_private.h index 6a3adb36a7c..a97f7db5c0d 100644 --- a/source/blender/draw/engines/eevee/eevee_private.h +++ b/source/blender/draw/engines/eevee/eevee_private.h @@ -515,7 +515,7 @@ enum { }; /* ************** SCENE LAYER DATA ************** */ -typedef struct EEVEE_SceneLayerData { +typedef struct EEVEE_ViewLayerData { /* Lamps */ struct EEVEE_LampsInfo *lamps; @@ -554,7 +554,7 @@ typedef struct EEVEE_SceneLayerData { /* Volumetrics */ struct EEVEE_VolumetricsInfo *volumetrics; -} EEVEE_SceneLayerData; +} EEVEE_ViewLayerData; /* ************ OBJECT DATA ************ */ typedef struct EEVEE_LampEngineData { @@ -624,7 +624,7 @@ typedef struct EEVEE_PrivateData { } EEVEE_PrivateData; /* Transient data */ /* eevee_data.c */ -EEVEE_SceneLayerData *EEVEE_scene_layer_data_get(void); +EEVEE_ViewLayerData *EEVEE_view_layer_data_get(void); EEVEE_ObjectEngineData *EEVEE_object_data_get(Object *ob); EEVEE_LightProbeEngineData *EEVEE_lightprobe_data_get(Object *ob); EEVEE_LampEngineData *EEVEE_lamp_data_get(Object *ob); @@ -633,7 +633,7 @@ EEVEE_LampEngineData *EEVEE_lamp_data_get(Object *ob); struct GPUTexture *EEVEE_materials_get_util_tex(void); /* XXX */ void EEVEE_materials_init(EEVEE_StorageList *stl); void EEVEE_materials_cache_init(EEVEE_Data *vedata); -void EEVEE_materials_cache_populate(EEVEE_Data *vedata, EEVEE_SceneLayerData *sldata, Object *ob); +void EEVEE_materials_cache_populate(EEVEE_Data *vedata, EEVEE_ViewLayerData *sldata, Object *ob); void EEVEE_materials_cache_finish(EEVEE_Data *vedata); struct GPUMaterial *EEVEE_material_world_lightprobe_get(struct Scene *scene, struct World *wo); struct GPUMaterial *EEVEE_material_world_background_get(struct Scene *scene, struct World *wo); @@ -649,90 +649,90 @@ void EEVEE_draw_default_passes(EEVEE_PassList *psl); void EEVEE_update_util_texture(float offset); /* eevee_lights.c */ -void EEVEE_lights_init(EEVEE_SceneLayerData *sldata); -void EEVEE_lights_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_PassList *psl); -void EEVEE_lights_cache_add(EEVEE_SceneLayerData *sldata, struct Object *ob); +void EEVEE_lights_init(EEVEE_ViewLayerData *sldata); +void EEVEE_lights_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_PassList *psl); +void EEVEE_lights_cache_add(EEVEE_ViewLayerData *sldata, struct Object *ob); void EEVEE_lights_cache_shcaster_add( - EEVEE_SceneLayerData *sldata, EEVEE_PassList *psl, struct Gwn_Batch *geom, float (*obmat)[4]); + EEVEE_ViewLayerData *sldata, EEVEE_PassList *psl, struct Gwn_Batch *geom, float (*obmat)[4]); void EEVEE_lights_cache_shcaster_material_add( - EEVEE_SceneLayerData *sldata, EEVEE_PassList *psl, + EEVEE_ViewLayerData *sldata, EEVEE_PassList *psl, struct GPUMaterial *gpumat, struct Gwn_Batch *geom, struct Object *ob, float (*obmat)[4], float *alpha_threshold); -void EEVEE_lights_cache_finish(EEVEE_SceneLayerData *sldata); -void EEVEE_lights_update(EEVEE_SceneLayerData *sldata); -void EEVEE_draw_shadows(EEVEE_SceneLayerData *sldata, EEVEE_PassList *psl); +void EEVEE_lights_cache_finish(EEVEE_ViewLayerData *sldata); +void EEVEE_lights_update(EEVEE_ViewLayerData *sldata); +void EEVEE_draw_shadows(EEVEE_ViewLayerData *sldata, EEVEE_PassList *psl); void EEVEE_lights_free(void); /* eevee_lightprobes.c */ -void EEVEE_lightprobes_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_lightprobes_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_lightprobes_cache_add(EEVEE_SceneLayerData *sldata, Object *ob); -void EEVEE_lightprobes_cache_finish(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_lightprobes_refresh(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_lightprobes_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_lightprobes_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_lightprobes_cache_add(EEVEE_ViewLayerData *sldata, Object *ob); +void EEVEE_lightprobes_cache_finish(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_lightprobes_refresh(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_lightprobes_free(void); /* eevee_depth_of_field.c */ -int EEVEE_depth_of_field_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_depth_of_field_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); +int EEVEE_depth_of_field_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_depth_of_field_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_depth_of_field_draw(EEVEE_Data *vedata); void EEVEE_depth_of_field_free(void); /* eevee_bloom.c */ -int EEVEE_bloom_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_bloom_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); +int EEVEE_bloom_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_bloom_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_bloom_draw(EEVEE_Data *vedata); void EEVEE_bloom_free(void); /* eevee_occlusion.c */ -int EEVEE_occlusion_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_occlusion_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_occlusion_compute(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_occlusion_draw_debug(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); +int EEVEE_occlusion_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_occlusion_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_occlusion_compute(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_occlusion_draw_debug(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_occlusion_free(void); /* eevee_screen_raytrace.c */ -int EEVEE_screen_raytrace_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_screen_raytrace_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_refraction_compute(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_reflection_compute(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); +int EEVEE_screen_raytrace_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_screen_raytrace_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_refraction_compute(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_reflection_compute(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_screen_raytrace_free(void); /* eevee_subsurface.c */ -int EEVEE_subsurface_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_subsurface_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); +int EEVEE_subsurface_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_subsurface_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_subsurface_add_pass(EEVEE_Data *vedata, unsigned int sss_id, struct GPUUniformBuffer *sss_profile); -void EEVEE_subsurface_data_render(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_subsurface_compute(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_subsurface_data_render(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_subsurface_compute(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_subsurface_free(void); /* eevee_motion_blur.c */ -int EEVEE_motion_blur_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_motion_blur_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); +int EEVEE_motion_blur_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_motion_blur_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_motion_blur_draw(EEVEE_Data *vedata); void EEVEE_motion_blur_free(void); /* eevee_temporal_sampling.c */ -int EEVEE_temporal_sampling_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_temporal_sampling_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); +int EEVEE_temporal_sampling_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_temporal_sampling_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_temporal_sampling_draw(EEVEE_Data *vedata); void EEVEE_temporal_sampling_free(void); /* eevee_volumes.c */ -int EEVEE_volumes_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_volumes_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_volumes_cache_object_add(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata, struct Scene *scene, Object *ob); -void EEVEE_volumes_compute(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_volumes_resolve(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); +int EEVEE_volumes_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_volumes_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_volumes_cache_object_add(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, struct Scene *scene, Object *ob); +void EEVEE_volumes_compute(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_volumes_resolve(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_volumes_free_smoke_textures(void); void EEVEE_volumes_free(void); /* eevee_effects.c */ -void EEVEE_effects_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); -void EEVEE_effects_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_effects_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_effects_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_create_minmax_buffer(EEVEE_Data *vedata, struct GPUTexture *depth_src, int layer); void EEVEE_downsample_buffer(EEVEE_Data *vedata, struct GPUFrameBuffer *fb_src, struct GPUTexture *texture_src, int level); void EEVEE_downsample_cube_buffer(EEVEE_Data *vedata, struct GPUFrameBuffer *fb_src, struct GPUTexture *texture_src, int level); -void EEVEE_effects_do_gtao(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata); +void EEVEE_effects_do_gtao(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata); void EEVEE_draw_effects(EEVEE_Data *vedata); void EEVEE_effects_free(void); diff --git a/source/blender/draw/engines/eevee/eevee_screen_raytrace.c b/source/blender/draw/engines/eevee/eevee_screen_raytrace.c index 27d4eb0b44a..35669968337 100644 --- a/source/blender/draw/engines/eevee/eevee_screen_raytrace.c +++ b/source/blender/draw/engines/eevee/eevee_screen_raytrace.c @@ -98,7 +98,7 @@ static struct GPUShader *eevee_effects_screen_raytrace_shader_get(int options) return e_data.ssr_sh[options]; } -int EEVEE_screen_raytrace_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +int EEVEE_screen_raytrace_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_StorageList *stl = vedata->stl; EEVEE_FramebufferList *fbl = vedata->fbl; @@ -107,8 +107,8 @@ int EEVEE_screen_raytrace_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data const float *viewport_size = DRW_viewport_size_get(); const DRWContextState *draw_ctx = DRW_context_state_get(); - SceneLayer *scene_layer = draw_ctx->scene_layer; - IDProperty *props = BKE_scene_layer_engine_evaluated_get(scene_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); + ViewLayer *view_layer = draw_ctx->view_layer; + IDProperty *props = BKE_view_layer_engine_evaluated_get(view_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); /* Compute pixel size, (shared with contact shadows) */ copy_v2_v2(effects->ssr_pixelsize, viewport_size); @@ -180,7 +180,7 @@ int EEVEE_screen_raytrace_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data return 0; } -void EEVEE_screen_raytrace_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata) +void EEVEE_screen_raytrace_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_StorageList *stl = vedata->stl; @@ -271,7 +271,7 @@ void EEVEE_screen_raytrace_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data * } } -void EEVEE_refraction_compute(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_refraction_compute(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_FramebufferList *fbl = vedata->fbl; EEVEE_TextureList *txl = vedata->txl; @@ -288,7 +288,7 @@ void EEVEE_refraction_compute(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data * } } -void EEVEE_reflection_compute(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_reflection_compute(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_FramebufferList *fbl = vedata->fbl; diff --git a/source/blender/draw/engines/eevee/eevee_subsurface.c b/source/blender/draw/engines/eevee/eevee_subsurface.c index fe6e77ddf29..d96d7b6a983 100644 --- a/source/blender/draw/engines/eevee/eevee_subsurface.c +++ b/source/blender/draw/engines/eevee/eevee_subsurface.c @@ -44,7 +44,7 @@ static void eevee_create_shader_subsurface(void) e_data.sss_sh[1] = DRW_shader_create_fullscreen(datatoc_effect_subsurface_frag_glsl, "#define SECOND_PASS\n"); } -int EEVEE_subsurface_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +int EEVEE_subsurface_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_StorageList *stl = vedata->stl; EEVEE_EffectsInfo *effects = stl->effects; @@ -53,8 +53,8 @@ int EEVEE_subsurface_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *veda const float *viewport_size = DRW_viewport_size_get(); const DRWContextState *draw_ctx = DRW_context_state_get(); - SceneLayer *scene_layer = draw_ctx->scene_layer; - IDProperty *props = BKE_scene_layer_engine_evaluated_get(scene_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); + ViewLayer *view_layer = draw_ctx->view_layer; + IDProperty *props = BKE_view_layer_engine_evaluated_get(view_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); if (BKE_collection_engine_property_value_get_bool(props, "sss_enable")) { effects->sss_sample_count = 1 + BKE_collection_engine_property_value_get_int(props, "sss_samples") * 2; @@ -92,7 +92,7 @@ int EEVEE_subsurface_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *veda return 0; } -void EEVEE_subsurface_cache_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_subsurface_cache_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_StorageList *stl = vedata->stl; @@ -138,7 +138,7 @@ void EEVEE_subsurface_add_pass(EEVEE_Data *vedata, unsigned int sss_id, struct G DRW_shgroup_call_add(grp, quad, NULL); } -void EEVEE_subsurface_data_render(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_subsurface_data_render(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_TextureList *txl = vedata->txl; @@ -187,7 +187,7 @@ void EEVEE_subsurface_data_render(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Da } } -void EEVEE_subsurface_compute(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_subsurface_compute(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_FramebufferList *fbl = vedata->fbl; diff --git a/source/blender/draw/engines/eevee/eevee_temporal_sampling.c b/source/blender/draw/engines/eevee/eevee_temporal_sampling.c index d5580c21a1f..72b8c85b7a7 100644 --- a/source/blender/draw/engines/eevee/eevee_temporal_sampling.c +++ b/source/blender/draw/engines/eevee/eevee_temporal_sampling.c @@ -44,7 +44,7 @@ static void eevee_create_shader_temporal_sampling(void) e_data.taa_resolve_sh = DRW_shader_create_fullscreen(datatoc_effect_temporal_aa_glsl, NULL); } -int EEVEE_temporal_sampling_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +int EEVEE_temporal_sampling_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_StorageList *stl = vedata->stl; EEVEE_FramebufferList *fbl = vedata->fbl; @@ -52,8 +52,8 @@ int EEVEE_temporal_sampling_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Dat EEVEE_EffectsInfo *effects = stl->effects; const DRWContextState *draw_ctx = DRW_context_state_get(); - SceneLayer *scene_layer = draw_ctx->scene_layer; - IDProperty *props = BKE_scene_layer_engine_evaluated_get(scene_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); + ViewLayer *view_layer = draw_ctx->view_layer; + IDProperty *props = BKE_view_layer_engine_evaluated_get(view_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); if (BKE_collection_engine_property_value_get_int(props, "taa_samples") != 1 && /* FIXME the motion blur camera evaluation is tagging view_updated @@ -134,7 +134,7 @@ int EEVEE_temporal_sampling_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Dat return 0; } -void EEVEE_temporal_sampling_cache_init(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_temporal_sampling_cache_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_StorageList *stl = vedata->stl; diff --git a/source/blender/draw/engines/eevee/eevee_volumes.c b/source/blender/draw/engines/eevee/eevee_volumes.c index f789d304f2b..14383e28cc7 100644 --- a/source/blender/draw/engines/eevee/eevee_volumes.c +++ b/source/blender/draw/engines/eevee/eevee_volumes.c @@ -119,7 +119,7 @@ static void eevee_create_shader_volumes(void) e_data.volumetric_common_lib, NULL); } -int EEVEE_volumes_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata) +int EEVEE_volumes_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata) { EEVEE_StorageList *stl = vedata->stl; EEVEE_FramebufferList *fbl = vedata->fbl; @@ -127,8 +127,8 @@ int EEVEE_volumes_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata) EEVEE_EffectsInfo *effects = stl->effects; const DRWContextState *draw_ctx = DRW_context_state_get(); - SceneLayer *scene_layer = draw_ctx->scene_layer; - IDProperty *props = BKE_scene_layer_engine_evaluated_get(scene_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); + ViewLayer *view_layer = draw_ctx->view_layer; + IDProperty *props = BKE_view_layer_engine_evaluated_get(view_layer, COLLECTION_MODE_NONE, RE_engine_id_BLENDER_EEVEE); const float *viewport_size = DRW_viewport_size_get(); @@ -326,7 +326,7 @@ int EEVEE_volumes_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata) return 0; } -void EEVEE_volumes_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata) +void EEVEE_volumes_cache_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_StorageList *stl = vedata->stl; @@ -437,7 +437,7 @@ void EEVEE_volumes_cache_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata) } } -void EEVEE_volumes_cache_object_add(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata, Scene *scene, Object *ob) +void EEVEE_volumes_cache_object_add(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata, Scene *scene, Object *ob) { float *texcoloc = NULL; float *texcosize = NULL; @@ -498,7 +498,7 @@ void EEVEE_volumes_cache_object_add(EEVEE_SceneLayerData *sldata, EEVEE_Data *ve } } -void EEVEE_volumes_compute(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_volumes_compute(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_TextureList *txl = vedata->txl; @@ -533,7 +533,7 @@ void EEVEE_volumes_compute(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *ved } } -void EEVEE_volumes_resolve(EEVEE_SceneLayerData *UNUSED(sldata), EEVEE_Data *vedata) +void EEVEE_volumes_resolve(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) { EEVEE_PassList *psl = vedata->psl; EEVEE_TextureList *txl = vedata->txl; diff --git a/source/blender/draw/intern/DRW_render.h b/source/blender/draw/intern/DRW_render.h index 2bb957c8e43..8d89454fa6a 100644 --- a/source/blender/draw/intern/DRW_render.h +++ b/source/blender/draw/intern/DRW_render.h @@ -382,8 +382,8 @@ struct DefaultTextureList *DRW_viewport_texture_list_get(void); void DRW_viewport_request_redraw(void); -/* SceneLayers */ -void **DRW_scene_layer_engine_data_get(DrawEngineType *engine_type, void (*callback)(void *storage)); +/* ViewLayers */ +void **DRW_view_layer_engine_data_get(DrawEngineType *engine_type, void (*callback)(void *storage)); /* Objects */ void **DRW_object_engine_data_get( @@ -438,7 +438,7 @@ typedef struct DRWContextState { struct View3D *v3d; /* 'CTX_wm_view3d(C)' */ struct Scene *scene; /* 'CTX_data_scene(C)' */ - struct SceneLayer *scene_layer; /* 'CTX_data_scene_layer(C)' */ + struct ViewLayer *view_layer; /* 'CTX_data_view_layer(C)' */ /* Use 'scene->obedit' for edit-mode */ struct Object *obact; /* 'OBACT' */ diff --git a/source/blender/draw/intern/draw_armature.c b/source/blender/draw/intern/draw_armature.c index 90a50110698..58cf3aaf6cc 100644 --- a/source/blender/draw/intern/draw_armature.c +++ b/source/blender/draw/intern/draw_armature.c @@ -1413,11 +1413,11 @@ static void DRW_shgroup_armature( } void DRW_shgroup_armature_object( - Object *ob, SceneLayer *scene_layer, DRWPass *pass_bone_solid, DRWPass *pass_bone_wire, DRWPass *UNUSED(pass_bone_envelope), + Object *ob, ViewLayer *view_layer, DRWPass *pass_bone_solid, DRWPass *pass_bone_wire, DRWPass *UNUSED(pass_bone_envelope), DRWShadingGroup *shgrp_relationship_lines) { float *color; - DRW_object_wire_theme_get(ob, scene_layer, &color); + DRW_object_wire_theme_get(ob, view_layer, &color); DRW_shgroup_armature(ob, pass_bone_solid, pass_bone_wire, NULL, shgrp_relationship_lines); draw_armature_pose(ob, color); diff --git a/source/blender/draw/intern/draw_common.c b/source/blender/draw/intern/draw_common.c index bb7b4d7d513..b52c8e280b3 100644 --- a/source/blender/draw/intern/draw_common.c +++ b/source/blender/draw/intern/draw_common.c @@ -373,10 +373,10 @@ DRWShadingGroup *shgroup_instance_mball_helpers(DRWPass *pass, struct Gwn_Batch * Get the wire color theme_id of an object based on it's state * \a r_color is a way to get a pointer to the static color var associated */ -int DRW_object_wire_theme_get(Object *ob, SceneLayer *scene_layer, float **r_color) +int DRW_object_wire_theme_get(Object *ob, ViewLayer *view_layer, float **r_color) { const bool is_edit = (ob->mode & OB_MODE_EDIT) != 0; - const bool active = (scene_layer->basact && scene_layer->basact->object == ob); + const bool active = (view_layer->basact && view_layer->basact->object == ob); /* confusing logic here, there are 2 methods of setting the color * 'colortab[colindex]' and 'theme_id', colindex overrides theme_id. * diff --git a/source/blender/draw/intern/draw_common.h b/source/blender/draw/intern/draw_common.h index 51b7a25490f..0bdb79b3a40 100644 --- a/source/blender/draw/intern/draw_common.h +++ b/source/blender/draw/intern/draw_common.h @@ -30,7 +30,7 @@ struct DRWPass; struct DRWShadingGroup; struct Gwn_Batch; struct Object; -struct SceneLayer; +struct ViewLayer; /* Used as ubo but colors can be directly referenced as well */ /* Keep in sync with: common_globals_lib.glsl (globalsBlock) */ @@ -106,12 +106,12 @@ struct DRWShadingGroup *shgroup_instance_bone_envelope_wire(struct DRWPass *pass struct DRWShadingGroup *shgroup_instance_bone_envelope_solid(struct DRWPass *pass, struct Gwn_Batch *geom, float (*obmat)[4]); struct DRWShadingGroup *shgroup_instance_mball_helpers(struct DRWPass *pass, struct Gwn_Batch *geom); -int DRW_object_wire_theme_get(struct Object *ob, struct SceneLayer *scene_layer, float **r_color); +int DRW_object_wire_theme_get(struct Object *ob, struct ViewLayer *view_layer, float **r_color); float *DRW_color_background_blend_get(int theme_id); /* draw_armature.c */ void DRW_shgroup_armature_object( - struct Object *ob, struct SceneLayer *scene_layer, + struct Object *ob, struct ViewLayer *view_layer, struct DRWPass *pass_bone_solid, struct DRWPass *pass_bone_wire, struct DRWPass *pass_bone_envelope, struct DRWShadingGroup *shgrp_relationship_lines); diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c index 672149b9e43..1e0061bc29c 100644 --- a/source/blender/draw/intern/draw_manager.c +++ b/source/blender/draw/intern/draw_manager.c @@ -2699,23 +2699,23 @@ void DRW_viewport_request_redraw(void) /* -------------------------------------------------------------------- */ -/** \name SceneLayers (DRW_scenelayer) +/** \name ViewLayers (DRW_scenelayer) * \{ */ -void **DRW_scene_layer_engine_data_get(DrawEngineType *engine_type, void (*callback)(void *storage)) +void **DRW_view_layer_engine_data_get(DrawEngineType *engine_type, void (*callback)(void *storage)) { - SceneLayerEngineData *sled; + ViewLayerEngineData *sled; - for (sled = DST.draw_ctx.scene_layer->drawdata.first; sled; sled = sled->next) { + for (sled = DST.draw_ctx.view_layer->drawdata.first; sled; sled = sled->next) { if (sled->engine_type == engine_type) { return &sled->storage; } } - sled = MEM_callocN(sizeof(SceneLayerEngineData), "SceneLayerEngineData"); + sled = MEM_callocN(sizeof(ViewLayerEngineData), "ViewLayerEngineData"); sled->engine_type = engine_type; sled->free = callback; - BLI_addtail(&DST.draw_ctx.scene_layer->drawdata, sled); + BLI_addtail(&DST.draw_ctx.view_layer->drawdata, sled); return &sled->storage; } @@ -3062,9 +3062,9 @@ static void DRW_engines_enable_external(void) use_drw_engine(DRW_engine_viewport_external_type.draw_engine); } -static void DRW_engines_enable(const Scene *scene, SceneLayer *scene_layer, RenderEngineType *engine) +static void DRW_engines_enable(const Scene *scene, ViewLayer *view_layer, RenderEngineType *engine) { - Object *obact = OBACT(scene_layer); + Object *obact = OBACT(view_layer); const int mode = CTX_data_mode_enum_ex(scene->obedit, obact); DRW_engines_enable_from_engine(engine); @@ -3227,7 +3227,7 @@ void DRW_notify_view_update(const bContext *C) RegionView3D *rv3d = ar->regiondata; Scene *scene = DEG_get_evaluated_scene(graph); RenderEngineType *engine = CTX_data_engine(C); - SceneLayer *scene_layer = CTX_data_scene_layer(C); + ViewLayer *view_layer = CTX_data_view_layer(C); if (rv3d->viewport == NULL) { return; @@ -3239,10 +3239,10 @@ void DRW_notify_view_update(const bContext *C) DST.viewport = rv3d->viewport; DST.draw_ctx = (DRWContextState){ - ar, rv3d, v3d, scene, scene_layer, OBACT(scene_layer), engine, C, + ar, rv3d, v3d, scene, view_layer, OBACT(view_layer), engine, C, }; - DRW_engines_enable(scene, scene_layer, engine); + DRW_engines_enable(scene, view_layer, engine); for (LinkData *link = DST.enabled_engines.first; link; link = link->next) { DrawEngineType *draw_engine = link->data; @@ -3291,7 +3291,7 @@ void DRW_draw_render_loop_ex( const bContext *evil_C) { Scene *scene = DEG_get_evaluated_scene(graph); - SceneLayer *scene_layer = DEG_get_evaluated_scene_layer(graph); + ViewLayer *view_layer = DEG_get_evaluated_view_layer(graph); RegionView3D *rv3d = ar->regiondata; DST.draw_ctx.evil_C = evil_C; @@ -3303,7 +3303,7 @@ void DRW_draw_render_loop_ex( GPU_viewport_engines_data_validate(DST.viewport, DRW_engines_get_hash()); DST.draw_ctx = (DRWContextState){ - ar, rv3d, v3d, scene, scene_layer, OBACT(scene_layer), engine, + ar, rv3d, v3d, scene, view_layer, OBACT(view_layer), engine, /* reuse if caller sets */ DST.draw_ctx.evil_C, @@ -3312,7 +3312,7 @@ void DRW_draw_render_loop_ex( DRW_viewport_var_init(); /* Get list of enabled engines */ - DRW_engines_enable(scene, scene_layer, engine); + DRW_engines_enable(scene, view_layer, engine); /* Update ubos */ DRW_globals_update(); @@ -3466,9 +3466,9 @@ void DRW_draw_select_loop( { Scene *scene = DEG_get_evaluated_scene(graph); RenderEngineType *engine = RE_engines_find(scene->view_render.engine_id); - SceneLayer *scene_layer = DEG_get_evaluated_scene_layer(graph); + ViewLayer *view_layer = DEG_get_evaluated_view_layer(graph); #ifndef USE_GPU_SELECT - UNUSED_VARS(vc, scene, scene_layer, v3d, ar, rect); + UNUSED_VARS(vc, scene, view_layer, v3d, ar, rect); #else RegionView3D *rv3d = ar->regiondata; @@ -3517,7 +3517,7 @@ void DRW_draw_select_loop( /* Instead of 'DRW_context_state_init(C, &DST.draw_ctx)', assign from args */ DST.draw_ctx = (DRWContextState){ - ar, rv3d, v3d, scene, scene_layer, OBACT(scene_layer), engine, (bContext *)NULL, + ar, rv3d, v3d, scene, view_layer, OBACT(view_layer), engine, (bContext *)NULL, }; DRW_viewport_var_init(); @@ -3584,7 +3584,7 @@ void DRW_draw_depth_loop( { Scene *scene = DEG_get_evaluated_scene(graph); RenderEngineType *engine = RE_engines_find(scene->view_render.engine_id); - SceneLayer *scene_layer = DEG_get_evaluated_scene_layer(graph); + ViewLayer *view_layer = DEG_get_evaluated_view_layer(graph); RegionView3D *rv3d = ar->regiondata; /* backup (_never_ use rv3d->viewport) */ @@ -3614,7 +3614,7 @@ void DRW_draw_depth_loop( /* Instead of 'DRW_context_state_init(C, &DST.draw_ctx)', assign from args */ DST.draw_ctx = (DRWContextState){ - ar, rv3d, v3d, scene, scene_layer, OBACT(scene_layer), engine, (bContext *)NULL, + ar, rv3d, v3d, scene, view_layer, OBACT(view_layer), engine, (bContext *)NULL, }; DRW_viewport_var_init(); diff --git a/source/blender/draw/intern/draw_view.c b/source/blender/draw/intern/draw_view.c index 8ed51fcd7f6..474d6ac8769 100644 --- a/source/blender/draw/intern/draw_view.c +++ b/source/blender/draw/intern/draw_view.c @@ -611,9 +611,9 @@ void DRW_draw_background(void) /* **************************** 3D Cursor ******************************** */ -static bool is_cursor_visible(Scene *scene, SceneLayer *scene_layer) +static bool is_cursor_visible(Scene *scene, ViewLayer *view_layer) { - Object *ob = OBACT(scene_layer); + Object *ob = OBACT(view_layer); /* don't draw cursor in paint modes, but with a few exceptions */ if (ob && ob->mode & OB_MODE_ALL_PAINT) { @@ -625,7 +625,7 @@ static bool is_cursor_visible(Scene *scene, SceneLayer *scene_layer) } /* exception: object in texture paint mode, clone brush, use_clone_layer disabled */ else if (ob->mode & OB_MODE_TEXTURE_PAINT) { - const Paint *p = BKE_paint_get_active(scene, scene_layer); + const Paint *p = BKE_paint_get_active(scene, view_layer); if (p && p->brush && p->brush->imagepaint_tool == PAINT_TOOL_CLONE) { if ((scene->toolsettings->imapaint.flag & IMAGEPAINT_PROJECT_LAYER_CLONE) == 0) { @@ -647,14 +647,14 @@ void DRW_draw_cursor(void) View3D *v3d = draw_ctx->v3d; RegionView3D *rv3d = draw_ctx->rv3d; Scene *scene = draw_ctx->scene; - SceneLayer *scene_layer = draw_ctx->scene_layer; + ViewLayer *view_layer = draw_ctx->view_layer; glColorMask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE); glDepthMask(GL_FALSE); glDisable(GL_DEPTH_TEST); glLineWidth(1.0f); - if (is_cursor_visible(scene, scene_layer)) { + if (is_cursor_visible(scene, view_layer)) { float *co = ED_view3d_cursor3d_get(scene, v3d); unsigned char crosshair_color[3]; diff --git a/source/blender/draw/modes/object_mode.c b/source/blender/draw/modes/object_mode.c index 534ef9fb5bd..a1bb12aec25 100644 --- a/source/blender/draw/modes/object_mode.c +++ b/source/blender/draw/modes/object_mode.c @@ -1089,12 +1089,12 @@ static void OBJECT_cache_init(void *vedata) } } -static void DRW_shgroup_mball_helpers(OBJECT_StorageList *stl, Object *ob, SceneLayer *scene_layer) +static void DRW_shgroup_mball_helpers(OBJECT_StorageList *stl, Object *ob, ViewLayer *view_layer) { MetaBall *mb = ob->data; float *color; - DRW_object_wire_theme_get(ob, scene_layer, &color); + DRW_object_wire_theme_get(ob, view_layer, &color); for (MetaElem *ml = mb->elems.first; ml != NULL; ml = ml->next) { /* draw radius */ @@ -1103,11 +1103,11 @@ static void DRW_shgroup_mball_helpers(OBJECT_StorageList *stl, Object *ob, Scene } } -static void DRW_shgroup_lamp(OBJECT_StorageList *stl, Object *ob, SceneLayer *scene_layer) +static void DRW_shgroup_lamp(OBJECT_StorageList *stl, Object *ob, ViewLayer *view_layer) { Lamp *la = ob->data; float *color; - int theme_id = DRW_object_wire_theme_get(ob, scene_layer, &color); + int theme_id = DRW_object_wire_theme_get(ob, view_layer, &color); static float zero = 0.0f; float **la_mats = (float **)DRW_object_engine_data_get(ob, &draw_engine_object_type, NULL); @@ -1208,7 +1208,7 @@ static void DRW_shgroup_lamp(OBJECT_StorageList *stl, Object *ob, SceneLayer *sc DRW_shgroup_call_dynamic_add(stl->g_data->lamp_groundpoint, ob->obmat[3]); } -static void DRW_shgroup_camera(OBJECT_StorageList *stl, Object *ob, SceneLayer *scene_layer) +static void DRW_shgroup_camera(OBJECT_StorageList *stl, Object *ob, ViewLayer *view_layer) { const DRWContextState *draw_ctx = DRW_context_state_get(); View3D *v3d = draw_ctx->v3d; @@ -1217,7 +1217,7 @@ static void DRW_shgroup_camera(OBJECT_StorageList *stl, Object *ob, SceneLayer * Camera *cam = ob->data; const bool is_active = (ob == v3d->camera); float *color; - DRW_object_wire_theme_get(ob, scene_layer, &color); + DRW_object_wire_theme_get(ob, view_layer, &color); float vec[4][3], asp[2], shift[2], scale[3], drawsize; @@ -1294,10 +1294,10 @@ static void DRW_shgroup_camera(OBJECT_StorageList *stl, Object *ob, SceneLayer * } } -static void DRW_shgroup_empty(OBJECT_StorageList *stl, OBJECT_PassList *psl, Object *ob, SceneLayer *scene_layer) +static void DRW_shgroup_empty(OBJECT_StorageList *stl, OBJECT_PassList *psl, Object *ob, ViewLayer *view_layer) { float *color; - DRW_object_wire_theme_get(ob, scene_layer, &color); + DRW_object_wire_theme_get(ob, view_layer, &color); switch (ob->empty_drawtype) { case OB_PLAINAXES: @@ -1329,9 +1329,9 @@ static void DRW_shgroup_empty(OBJECT_StorageList *stl, OBJECT_PassList *psl, Obj } } -static void DRW_shgroup_forcefield(OBJECT_StorageList *stl, Object *ob, SceneLayer *scene_layer) +static void DRW_shgroup_forcefield(OBJECT_StorageList *stl, Object *ob, ViewLayer *view_layer) { - int theme_id = DRW_object_wire_theme_get(ob, scene_layer, NULL); + int theme_id = DRW_object_wire_theme_get(ob, view_layer, NULL); float *color = DRW_color_background_blend_get(theme_id); PartDeflect *pd = ob->pd; Curve *cu = (ob->type == OB_CURVE) ? ob->data : NULL; @@ -1428,11 +1428,11 @@ static void DRW_shgroup_forcefield(OBJECT_StorageList *stl, Object *ob, SceneLay } } -static void DRW_shgroup_speaker(OBJECT_StorageList *stl, Object *ob, SceneLayer *scene_layer) +static void DRW_shgroup_speaker(OBJECT_StorageList *stl, Object *ob, ViewLayer *view_layer) { float *color; static float one = 1.0f; - DRW_object_wire_theme_get(ob, scene_layer, &color); + DRW_object_wire_theme_get(ob, view_layer, &color); DRW_shgroup_call_dynamic_add(stl->g_data->speaker, color, &one, ob->obmat); } @@ -1447,13 +1447,13 @@ typedef struct OBJECT_LightProbeEngineData { float corner[3]; } OBJECT_LightProbeEngineData; -static void DRW_shgroup_lightprobe(OBJECT_StorageList *stl, OBJECT_PassList *psl, Object *ob, SceneLayer *scene_layer) +static void DRW_shgroup_lightprobe(OBJECT_StorageList *stl, OBJECT_PassList *psl, Object *ob, ViewLayer *view_layer) { float *color; static float one = 1.0f; LightProbe *prb = (LightProbe *)ob->data; bool do_outlines = ((ob->base_flag & BASE_SELECTED) != 0); - DRW_object_wire_theme_get(ob, scene_layer, &color); + DRW_object_wire_theme_get(ob, view_layer, &color); OBJECT_LightProbeEngineData *prb_data; OBJECT_LightProbeEngineData **prb_data_pt = (OBJECT_LightProbeEngineData **)DRW_object_engine_data_get(ob, &draw_engine_object_type, NULL); @@ -1654,12 +1654,12 @@ static void DRW_shgroup_relationship_lines(OBJECT_StorageList *stl, Object *ob) } } -static void DRW_shgroup_object_center(OBJECT_StorageList *stl, Object *ob, SceneLayer *scene_layer, View3D *v3d) +static void DRW_shgroup_object_center(OBJECT_StorageList *stl, Object *ob, ViewLayer *view_layer, View3D *v3d) { const bool is_library = ob->id.us > 1 || ID_IS_LINKED(ob); DRWShadingGroup *shgroup; - if (ob == OBACT(scene_layer)) { + if (ob == OBACT(view_layer)) { shgroup = stl->g_data->center_active; } else if (ob->base_flag & BASE_SELECTED) { @@ -1759,7 +1759,7 @@ static void OBJECT_cache_populate(void *vedata, Object *ob) OBJECT_StorageList *stl = ((OBJECT_Data *)vedata)->stl; const DRWContextState *draw_ctx = DRW_context_state_get(); Scene *scene = draw_ctx->scene; - SceneLayer *scene_layer = draw_ctx->scene_layer; + ViewLayer *view_layer = draw_ctx->view_layer; View3D *v3d = draw_ctx->v3d; int theme_id = TH_UNDEFINED; @@ -1777,7 +1777,7 @@ static void OBJECT_cache_populate(void *vedata, Object *ob) if (ob != obedit && !((ob == draw_ctx->obact) && (ob->mode & OB_MODE_ALL_PAINT))) { struct Gwn_Batch *geom = DRW_cache_object_surface_get(ob); if (geom) { - theme_id = DRW_object_wire_theme_get(ob, scene_layer, NULL); + theme_id = DRW_object_wire_theme_get(ob, view_layer, NULL); DRWShadingGroup *shgroup = shgroup_theme_id_to_outline_or(stl, theme_id, NULL); if (shgroup != NULL) { DRW_shgroup_call_add(shgroup, geom, ob->obmat); @@ -1796,7 +1796,7 @@ static void OBJECT_cache_populate(void *vedata, Object *ob) struct Gwn_Batch *geom = DRW_cache_mesh_edges_get(ob); if (geom) { if (theme_id == TH_UNDEFINED) { - theme_id = DRW_object_wire_theme_get(ob, scene_layer, NULL); + theme_id = DRW_object_wire_theme_get(ob, view_layer, NULL); } DRWShadingGroup *shgroup = shgroup_theme_id_to_wire_or(stl, theme_id, stl->g_data->wire); @@ -1816,7 +1816,7 @@ static void OBJECT_cache_populate(void *vedata, Object *ob) if (ob != obedit) { struct Gwn_Batch *geom = DRW_cache_lattice_wire_get(ob, false); if (theme_id == TH_UNDEFINED) { - theme_id = DRW_object_wire_theme_get(ob, scene_layer, NULL); + theme_id = DRW_object_wire_theme_get(ob, view_layer, NULL); } DRWShadingGroup *shgroup = shgroup_theme_id_to_wire_or(stl, theme_id, stl->g_data->wire); @@ -1831,7 +1831,7 @@ static void OBJECT_cache_populate(void *vedata, Object *ob) if (ob != obedit) { struct Gwn_Batch *geom = DRW_cache_curve_edge_wire_get(ob); if (theme_id == TH_UNDEFINED) { - theme_id = DRW_object_wire_theme_get(ob, scene_layer, NULL); + theme_id = DRW_object_wire_theme_get(ob, view_layer, NULL); } DRWShadingGroup *shgroup = shgroup_theme_id_to_wire_or(stl, theme_id, stl->g_data->wire); DRW_shgroup_call_add(shgroup, geom, ob->obmat); @@ -1842,24 +1842,24 @@ static void OBJECT_cache_populate(void *vedata, Object *ob) { Object *obedit = scene->obedit; if (ob != obedit) { - DRW_shgroup_mball_helpers(stl, ob, scene_layer); + DRW_shgroup_mball_helpers(stl, ob, view_layer); } break; } case OB_LAMP: - DRW_shgroup_lamp(stl, ob, scene_layer); + DRW_shgroup_lamp(stl, ob, view_layer); break; case OB_CAMERA: - DRW_shgroup_camera(stl, ob, scene_layer); + DRW_shgroup_camera(stl, ob, view_layer); break; case OB_EMPTY: - DRW_shgroup_empty(stl, psl, ob, scene_layer); + DRW_shgroup_empty(stl, psl, ob, view_layer); break; case OB_SPEAKER: - DRW_shgroup_speaker(stl, ob, scene_layer); + DRW_shgroup_speaker(stl, ob, view_layer); break; case OB_LIGHTPROBE: - DRW_shgroup_lightprobe(stl, psl, ob, scene_layer); + DRW_shgroup_lightprobe(stl, psl, ob, view_layer); break; case OB_ARMATURE: { @@ -1867,7 +1867,7 @@ static void OBJECT_cache_populate(void *vedata, Object *ob) if (arm->edbo == NULL) { if (DRW_state_is_select() || !DRW_pose_mode_armature(ob, draw_ctx->obact)) { DRW_shgroup_armature_object( - ob, scene_layer, psl->bone_solid, psl->bone_wire, psl->bone_envelope, + ob, view_layer, psl->bone_solid, psl->bone_wire, psl->bone_envelope, stl->g_data->relationship_lines); } } @@ -1878,20 +1878,20 @@ static void OBJECT_cache_populate(void *vedata, Object *ob) } if (ob->pd && ob->pd->forcefield) { - DRW_shgroup_forcefield(stl, ob, scene_layer); + DRW_shgroup_forcefield(stl, ob, view_layer); } /* don't show object extras in set's */ if ((ob->base_flag & (BASE_FROM_SET | BASE_FROMDUPLI)) == 0) { - DRW_shgroup_object_center(stl, ob, scene_layer, v3d); + DRW_shgroup_object_center(stl, ob, view_layer, v3d); DRW_shgroup_relationship_lines(stl, ob); if ((ob->dtx & OB_DRAWNAME) && DRW_state_show_text()) { struct DRWTextStore *dt = DRW_text_cache_ensure(); if (theme_id == TH_UNDEFINED) { - theme_id = DRW_object_wire_theme_get(ob, scene_layer, NULL); + theme_id = DRW_object_wire_theme_get(ob, view_layer, NULL); } unsigned char color[4]; |