summaryrefslogtreecommitdiffstats
path: root/src/video_core
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2019-06-04 18:12:40 +0200
committerReinUsesLisp <reinuseslisp@airmail.cc>2019-06-21 02:38:34 +0200
commit6f69f06873f666174d3c0306055bc5f097d64afc (patch)
tree2f82abd10f8ecb7ede7588d46073a77084cc5646 /src/video_core
parenttexture_cache: move some large methods to cpp files (diff)
downloadyuzu-6f69f06873f666174d3c0306055bc5f097d64afc.tar
yuzu-6f69f06873f666174d3c0306055bc5f097d64afc.tar.gz
yuzu-6f69f06873f666174d3c0306055bc5f097d64afc.tar.bz2
yuzu-6f69f06873f666174d3c0306055bc5f097d64afc.tar.lz
yuzu-6f69f06873f666174d3c0306055bc5f097d64afc.tar.xz
yuzu-6f69f06873f666174d3c0306055bc5f097d64afc.tar.zst
yuzu-6f69f06873f666174d3c0306055bc5f097d64afc.zip
Diffstat (limited to 'src/video_core')
-rw-r--r--src/video_core/texture_cache/texture_cache.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/video_core/texture_cache/texture_cache.h b/src/video_core/texture_cache/texture_cache.h
index 951168357..d2c27bcef 100644
--- a/src/video_core/texture_cache/texture_cache.h
+++ b/src/video_core/texture_cache/texture_cache.h
@@ -389,7 +389,8 @@ private:
const auto gpu_addr = current_surface->GetGpuAddr();
TSurface new_surface = GetUncachedSurface(gpu_addr, params);
const auto& cr_params = current_surface->GetSurfaceParams();
- if (!support_info.depth_color_image_copies && cr_params.type != params.type) {
+ if (cr_params.type != params.type && (!support_info.depth_color_image_copies ||
+ cr_params.component_type != params.component_type)) {
BufferCopy(current_surface, new_surface);
} else {
std::vector<CopyParams> bricks = current_surface->BreakDown(params);