diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2020-06-24 15:27:35 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2020-06-24 15:27:47 +0300 |
commit | a6c59863d38fa81a58744f7fc5b400254de5f59e (patch) | |
tree | 409d1159f801a9b36bebf1794325113ddfc2af01 | |
parent | dd328be0f08bc79125f9bc862d814e49c213b2f3 (diff) |
EEVEE: Fix crash when using motion blur without postfx blur
-rw-r--r-- | source/blender/draw/engines/eevee/eevee_engine.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_engine.c b/source/blender/draw/engines/eevee/eevee_engine.c index 83d2168af8e..a5df774656a 100644 --- a/source/blender/draw/engines/eevee/eevee_engine.c +++ b/source/blender/draw/engines/eevee/eevee_engine.c @@ -470,8 +470,6 @@ static void eevee_render_to_image(void *vedata, /* The previous step of this iteration N is exactly the next step of iteration N - 1. * So we just swap the resources to avoid too much re-evaluation. */ EEVEE_motion_blur_swap_data(vedata); - - DRW_cache_restart(); } else { EEVEE_motion_blur_step_set(ved, MB_PREV); @@ -536,6 +534,12 @@ static void eevee_render_to_image(void *vedata, EEVEE_temporal_sampling_create_view(vedata); EEVEE_render_draw(vedata, engine, render_layer, rect); + + if (i < time_steps_tot - 1) { + /* Don't reset after the last loop. Since EEVEE_render_read_result + * might need some DRWPasses. */ + DRW_cache_restart(); + } } } |