diff --git a/GPU/Common/TextureCacheCommon.cpp b/GPU/Common/TextureCacheCommon.cpp index f2c68b5777..6f2ab13e5b 100644 --- a/GPU/Common/TextureCacheCommon.cpp +++ b/GPU/Common/TextureCacheCommon.cpp @@ -641,15 +641,13 @@ std::vector TextureCacheCommon::GetFramebufferCandidates(const } if (candidates.size() > 1) { - bool depth = channel == RasterChannel::RASTER_DEPTH; - std::string cands; for (auto &candidate : candidates) { cands += candidate.ToString() + " "; } - WARN_LOG_REPORT_ONCE(multifbcandidate, G3D, "GetFramebufferCandidates(%s): Multiple (%d) candidate framebuffers. First will be chosen. texaddr: %08x offset: %d (%dx%d stride %d, %s):\n%s", - depth ? "DEPTH" : "COLOR", (int)candidates.size(), + WARN_LOG_REPORT_ONCE(multifbcandidate, G3D, "GetFramebufferCandidates: Multiple (%d) candidate framebuffers. texaddr: %08x offset: %d (%dx%d stride %d, %s):\n%s", + (int)candidates.size(), entry.addr, texAddrOffset, dimWidth(entry.dim), dimHeight(entry.dim), entry.bufw, GeTextureFormatToString(entry.format), cands.c_str() ); @@ -878,6 +876,13 @@ bool TextureCacheCommon::MatchFramebuffer( return false; } + switch (entry.format) { + case GE_TFMT_DXT1: + case GE_TFMT_DXT3: + case GE_TFMT_DXT5: + return false; + } + u32 addr = fb_address & 0x3FFFFFFF; u32 texaddr = entry.addr + texaddrOffset;