diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2017-10-02 21:02:21 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2017-10-02 21:02:21 +0300 |
commit | c548c76804e49d8c708aa42dacb87c5df1321d00 (patch) | |
tree | 98b5cd2752a11f488678c66240db6f825436ef83 /source/blender/draw | |
parent | 5f7192018eb81af1cf406999d8d7871b4f47cd31 (diff) |
Eevee : Fix ghosting from probe data when toggling "only render".
Diffstat (limited to 'source/blender/draw')
-rw-r--r-- | source/blender/draw/engines/eevee/eevee_effects.c | 4 | ||||
-rw-r--r-- | source/blender/draw/engines/eevee/eevee_private.h | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_effects.c b/source/blender/draw/engines/eevee/eevee_effects.c index aa843e6e4c1..d039f470000 100644 --- a/source/blender/draw/engines/eevee/eevee_effects.c +++ b/source/blender/draw/engines/eevee/eevee_effects.c @@ -530,6 +530,10 @@ void EEVEE_effects_init(EEVEE_SceneLayerData *sldata, EEVEE_Data *vedata) view_is_valid = view_is_valid && compare_m4m4(persmat, effects->prev_drw_persmat, FLT_MIN); copy_m4_m4(effects->prev_drw_persmat, persmat); + /* Prevent ghosting from probe data. */ + view_is_valid = view_is_valid && (effects->prev_drw_support == DRW_state_draw_support()); + effects->prev_drw_support = DRW_state_draw_support(); + if (view_is_valid && ((effects->taa_total_sample == 0) || (effects->taa_current_sample < effects->taa_total_sample))) diff --git a/source/blender/draw/engines/eevee/eevee_private.h b/source/blender/draw/engines/eevee/eevee_private.h index 3267b13e6ab..392b4bfe24a 100644 --- a/source/blender/draw/engines/eevee/eevee_private.h +++ b/source/blender/draw/engines/eevee/eevee_private.h @@ -376,6 +376,7 @@ typedef struct EEVEE_EffectsInfo { int taa_current_sample; int taa_total_sample; float taa_alpha; + bool prev_drw_support; float prev_drw_persmat[4][4]; float overide_persmat[4][4]; float overide_persinv[4][4]; |