summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Squall-Leonhart2023-10-11 18:19:35 +1100
committerGravatar Squall-Leonhart2023-10-11 19:12:33 +1100
commit9512992fe20b352ce265a358ed9bcfd17d9a74fd (patch)
tree645addf884869abeaf1739a9659d8dad6300b833
parentReuse part of my previous idea to to use num_levels to check within AdjustMip... (diff)
downloadyuzu-9512992fe20b352ce265a358ed9bcfd17d9a74fd.tar.gz
yuzu-9512992fe20b352ce265a358ed9bcfd17d9a74fd.tar.xz
yuzu-9512992fe20b352ce265a358ed9bcfd17d9a74fd.zip
Fix mistaken usage of info.block instead of level_info.block
Fixed an error on my part, in the last change I had mistakenly passed unadjusted block info into FullUploadSwizzles and UnswizzleImage Revert (my mistaken changing of) the construction of SwizzleParameters in UnswizzleImage and FullUploadSwizzles to use level_info.block instead of info.block. This ensures that the block information used in the swizzling process is correctly adjusted for each mip level.
-rw-r--r--src/video_core/texture_cache/util.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/video_core/texture_cache/util.cpp b/src/video_core/texture_cache/util.cpp
index 0f8ef4277..652097a3d 100644
--- a/src/video_core/texture_cache/util.cpp
+++ b/src/video_core/texture_cache/util.cpp
@@ -885,7 +885,7 @@ boost::container::small_vector<BufferImageCopy, 16> UnswizzleImage(Tegra::Memory
885 }; 885 };
886 const Extent3D num_tiles = AdjustTileSize(level_size, tile_size); 886 const Extent3D num_tiles = AdjustTileSize(level_size, tile_size);
887 const Extent3D block = 887 const Extent3D block =
888 AdjustMipBlockSize(num_tiles, info.block, level, level_info.num_levels); 888 AdjustMipBlockSize(num_tiles, level_info.block, level, level_info.num_levels);
889 const u32 stride_alignment = StrideAlignment(num_tiles, info.block, gob, bpp_log2); 889 const u32 stride_alignment = StrideAlignment(num_tiles, info.block, gob, bpp_log2);
890 size_t guest_layer_offset = 0; 890 size_t guest_layer_offset = 0;
891 891
@@ -1062,7 +1062,7 @@ boost::container::small_vector<SwizzleParameters, 16> FullUploadSwizzles(const I
1062 const Extent3D level_size = AdjustMipSize(size, level); 1062 const Extent3D level_size = AdjustMipSize(size, level);
1063 const Extent3D num_tiles = AdjustTileSize(level_size, tile_size); 1063 const Extent3D num_tiles = AdjustTileSize(level_size, tile_size);
1064 const Extent3D block = 1064 const Extent3D block =
1065 AdjustMipBlockSize(num_tiles, info.block, level, level_info.num_levels); 1065 AdjustMipBlockSize(num_tiles, level_info.block, level, level_info.num_levels);
1066 params[level] = SwizzleParameters{ 1066 params[level] = SwizzleParameters{
1067 .num_tiles = num_tiles, 1067 .num_tiles = num_tiles,
1068 .block = block, 1068 .block = block,