Changeset View
Changeset View
Standalone View
Standalone View
source/blender/draw/engines/eevee/eevee_data.c
| Show All 16 Lines | |||||
| * | * | ||||
| * Contributor(s): Blender Institute | * Contributor(s): Blender Institute | ||||
| * | * | ||||
| */ | */ | ||||
| /** \file eevee_data.c | /** \file eevee_data.c | ||||
| * \ingroup draw_engine | * \ingroup draw_engine | ||||
| * | * | ||||
| * All specific data handler for Objects, Lights, SceneLayers, ... | * All specific data handler for Objects, Lights, ViewLayers, ... | ||||
| */ | */ | ||||
| #include "DRW_render.h" | #include "DRW_render.h" | ||||
| #include "eevee_private.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 */ | /* Lights */ | ||||
| MEM_SAFE_FREE(sldata->lamps); | MEM_SAFE_FREE(sldata->lamps); | ||||
| DRW_UBO_FREE_SAFE(sldata->light_ubo); | DRW_UBO_FREE_SAFE(sldata->light_ubo); | ||||
| DRW_UBO_FREE_SAFE(sldata->shadow_ubo); | DRW_UBO_FREE_SAFE(sldata->shadow_ubo); | ||||
| DRW_UBO_FREE_SAFE(sldata->shadow_render_ubo); | DRW_UBO_FREE_SAFE(sldata->shadow_render_ubo); | ||||
| DRW_FRAMEBUFFER_FREE_SAFE(sldata->shadow_target_fb); | DRW_FRAMEBUFFER_FREE_SAFE(sldata->shadow_target_fb); | ||||
| DRW_FRAMEBUFFER_FREE_SAFE(sldata->shadow_store_fb); | DRW_FRAMEBUFFER_FREE_SAFE(sldata->shadow_store_fb); | ||||
| Show All 30 Lines | |||||
| static void eevee_lightprobe_data_free(void *storage) | static void eevee_lightprobe_data_free(void *storage) | ||||
| { | { | ||||
| EEVEE_LightProbeEngineData *ped = (EEVEE_LightProbeEngineData *)storage; | EEVEE_LightProbeEngineData *ped = (EEVEE_LightProbeEngineData *)storage; | ||||
| BLI_freelistN(&ped->captured_object_list); | 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( | EEVEE_ViewLayerData **sldata = (EEVEE_ViewLayerData **)DRW_view_layer_engine_data_get( | ||||
| &draw_engine_eevee_type, &eevee_scene_layer_data_free); | &draw_engine_eevee_type, &eevee_view_layer_data_free); | ||||
| if (*sldata == NULL) { | if (*sldata == NULL) { | ||||
| *sldata = MEM_callocN(sizeof(**sldata), "EEVEE_SceneLayerData"); | *sldata = MEM_callocN(sizeof(**sldata), "EEVEE_ViewLayerData"); | ||||
| } | } | ||||
| return *sldata; | return *sldata; | ||||
| } | } | ||||
| EEVEE_ObjectEngineData *EEVEE_object_data_get(Object *ob) | EEVEE_ObjectEngineData *EEVEE_object_data_get(Object *ob) | ||||
| { | { | ||||
| EEVEE_ObjectEngineData **oedata = (EEVEE_ObjectEngineData **)DRW_object_engine_data_get( | EEVEE_ObjectEngineData **oedata = (EEVEE_ObjectEngineData **)DRW_object_engine_data_get( | ||||
| Show All 34 Lines | |||||