From dba83f489889af5e05962d240d6c462ba07e6adc Mon Sep 17 00:00:00 2001 From: Wunkolo Date: Sat, 11 Nov 2023 11:14:00 -0800 Subject: [PATCH] rasterizer_cache: Unregister all surfaces when sample_count changes Allows the run-time changing of sample-count. --- src/video_core/rasterizer_cache/rasterizer_cache.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/video_core/rasterizer_cache/rasterizer_cache.h b/src/video_core/rasterizer_cache/rasterizer_cache.h index e3216a07b..179718352 100644 --- a/src/video_core/rasterizer_cache/rasterizer_cache.h +++ b/src/video_core/rasterizer_cache/rasterizer_cache.h @@ -96,20 +96,21 @@ void RasterizerCache::TickFrame() { } const u32 scale_factor = renderer.GetResolutionScaleFactor(); + const u32 samples = renderer.GetSampleCount(); const bool resolution_scale_changed = resolution_scale_factor != scale_factor; + const bool sample_count_changed = sample_count != samples; const bool use_custom_texture_changed = Settings::values.custom_textures.GetValue() != use_custom_textures; - if (resolution_scale_changed || use_custom_texture_changed) { + if (resolution_scale_changed || use_custom_texture_changed || sample_count_changed) { resolution_scale_factor = scale_factor; + sample_count = renderer.GetSampleCount(); use_custom_textures = Settings::values.custom_textures.GetValue(); if (use_custom_textures) { custom_tex_manager.FindCustomTextures(); } UnregisterAll(); } - - sample_count = renderer.GetSampleCount(); } template