From dcdf8fd3ced5e5d2b94299bc710a69ee06bab0d6 Mon Sep 17 00:00:00 2001 From: degasus Date: Thu, 29 Oct 2015 17:48:35 +0100 Subject: TextureCache: Split efb2ram from efb2tex --- Source/Core/VideoCommon/TextureCacheBase.cpp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'Source/Core/VideoCommon/TextureCacheBase.cpp') diff --git a/Source/Core/VideoCommon/TextureCacheBase.cpp b/Source/Core/VideoCommon/TextureCacheBase.cpp index 8f1d700dfd..44fdf9fe48 100644 --- a/Source/Core/VideoCommon/TextureCacheBase.cpp +++ b/Source/Core/VideoCommon/TextureCacheBase.cpp @@ -1050,6 +1050,25 @@ void TextureCacheBase::CopyRenderTargetToTexture(u32 dstAddr, unsigned int dstFo entry->FromRenderTarget(dst, dstFormat, dstStride, srcFormat, srcRect, isIntensity, scaleByHalf, cbufid, colmat); + if (g_ActiveConfig.bSkipEFBCopyToRam) + { + entry->Zero(dst); + } + else + { + g_texture_cache->CopyEFB( + dst, + entry->format, + entry->native_width, + entry->BytesPerRow(), + entry->NumBlocksY(), + entry->memory_stride, + srcFormat, + srcRect, + isIntensity, + scaleByHalf); + } + u64 hash = entry->CalculateHash(); entry->SetHashes(hash, hash); -- cgit v1.2.3