diff options
Diffstat (limited to 'source/blender/blenkernel/intern/scene.c')
-rw-r--r-- | source/blender/blenkernel/intern/scene.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/scene.c b/source/blender/blenkernel/intern/scene.c index 1b309d76f61..8886fae1707 100644 --- a/source/blender/blenkernel/intern/scene.c +++ b/source/blender/blenkernel/intern/scene.c @@ -102,6 +102,9 @@ #include "DEG_depsgraph_query.h" #include "RE_engine.h" +#include "RE_engine.h" + +#include "engines/eevee/eevee_lightcache.h" #include "PIL_time.h" @@ -316,6 +319,9 @@ void BKE_scene_copy_data(Main *bmain, Scene *sce_dst, const Scene *sce_src, cons else { sce_dst->preview = NULL; } + + sce_dst->eevee.light_cache = NULL; + /* TODO Copy the cache. */ } Scene *BKE_scene_copy(Main *bmain, Scene *sce, int type) @@ -511,6 +517,11 @@ void BKE_scene_free_ex(Scene *sce, const bool do_id_user) sce->master_collection = NULL; } + if (sce->eevee.light_cache) { + EEVEE_lightcache_free(sce->eevee.light_cache); + sce->eevee.light_cache = NULL; + } + /* These are freed on doversion. */ BLI_assert(sce->layer_properties == NULL); } @@ -814,6 +825,8 @@ void BKE_scene_init(Scene *sce) sce->eevee.gi_diffuse_bounces = 3; sce->eevee.gi_cubemap_resolution = 512; sce->eevee.gi_visibility_resolution = 32; + sce->eevee.gi_cubemap_draw_size = 0.2f; + sce->eevee.gi_irradiance_draw_size = 1.0f; sce->eevee.taa_samples = 16; sce->eevee.taa_render_samples = 64; @@ -856,6 +869,8 @@ void BKE_scene_init(Scene *sce) sce->eevee.shadow_cube_size = 512; sce->eevee.shadow_cascade_size = 1024; + sce->eevee.light_cache = NULL; + sce->eevee.flag = SCE_EEVEE_VOLUMETRIC_LIGHTS | SCE_EEVEE_VOLUMETRIC_COLORED | |