From 6b4a5bb203c6fb9b6532876031a494eacc425c5e Mon Sep 17 00:00:00 2001 From: boludoz Date: Thu, 28 Sep 2023 02:22:26 -0300 Subject: [PATCH] Second threshold for the specific case, works. --- src/video_core/texture_cache/image_info.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/video_core/texture_cache/image_info.cpp b/src/video_core/texture_cache/image_info.cpp index 66cefb237a..51c1576aca 100644 --- a/src/video_core/texture_cache/image_info.cpp +++ b/src/video_core/texture_cache/image_info.cpp @@ -24,6 +24,7 @@ using VideoCore::Surface::SurfaceType; constexpr u32 RescaleHeightThreshold = 288; constexpr u32 DownscaleHeightThreshold = 128; +constexpr u32 DownscaleHeightThresholdTwo = 1024; ImageInfo::ImageInfo(const TICEntry& config) noexcept { forced_flushed = config.IsPitchLinear() && !Settings::values.use_reactive_flushing.GetValue(); @@ -197,7 +198,7 @@ ImageInfo::ImageInfo(const Maxwell3D::Regs::Zeta& zt, const Maxwell3D::Regs::Zet if (zt_size.dim_control == Maxwell3D::Regs::ZetaSize::DimensionControl::DefineArraySize) { resources.layers = zt_size.depth; // TODO: Problematic downscaling here, check if it is possible add more "filters" for avoid bugs. - // downscaleable = size.height > DownscaleHeightThreshold; + downscaleable = size.height > DownscaleHeightThresholdTwo; } else if (zt_size.dim_control == Maxwell3D::Regs::ZetaSize::DimensionControl::ArraySizeIsOne) { resources.layers = 1;