diff options
-rw-r--r-- | source/blender/draw/engines/eevee/eevee_effects.c | 6 | ||||
-rw-r--r-- | source/blender/draw/engines/eevee/eevee_temporal_sampling.c | 1 |
2 files changed, 6 insertions, 1 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_effects.c b/source/blender/draw/engines/eevee/eevee_effects.c index 021afa64fee..1b152afa3bf 100644 --- a/source/blender/draw/engines/eevee/eevee_effects.c +++ b/source/blender/draw/engines/eevee/eevee_effects.c @@ -161,6 +161,12 @@ void EEVEE_effects_init(EEVEE_ViewLayerData *sldata, effects->enabled_effects |= EEVEE_occlusion_init(sldata, vedata); effects->enabled_effects |= EEVEE_screen_raytrace_init(sldata, vedata); + if ((effects->enabled_effects & EFFECT_TAA) && effects->taa_current_sample > 1) { + /* Update matrices here because EEVEE_screen_raytrace_init can have reset the + * taa_current_sample. (See T66811) */ + EEVEE_temporal_sampling_update_matrices(vedata); + } + EEVEE_volumes_init(sldata, vedata); EEVEE_subsurface_init(sldata, vedata); diff --git a/source/blender/draw/engines/eevee/eevee_temporal_sampling.c b/source/blender/draw/engines/eevee/eevee_temporal_sampling.c index 099147a82dd..96924efa8bc 100644 --- a/source/blender/draw/engines/eevee/eevee_temporal_sampling.c +++ b/source/blender/draw/engines/eevee/eevee_temporal_sampling.c @@ -253,7 +253,6 @@ int EEVEE_temporal_sampling_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data if (!DRW_state_is_image_render()) { effects->taa_current_sample += 1; repro_flag = 0; - EEVEE_temporal_sampling_update_matrices(vedata); } } else { |