diff options
author | liamwhite <liamwhite@users.noreply.github.com> | 2023-10-17 17:48:57 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-10-17 17:48:57 +0200 |
commit | fa56518f209ad17ca0a46c408cc752d4083137ea (patch) | |
tree | 0d33133e57675a5bfb2cee830b03aa7cd8effea2 /src/video_core/texture_cache | |
parent | Merge pull request #11349 from vonchenplus/buffer_cache_crash (diff) | |
parent | Get out of render pass before query barriers, fix image names with samples > 1, remove image alias bit (diff) | |
download | yuzu-fa56518f209ad17ca0a46c408cc752d4083137ea.tar yuzu-fa56518f209ad17ca0a46c408cc752d4083137ea.tar.gz yuzu-fa56518f209ad17ca0a46c408cc752d4083137ea.tar.bz2 yuzu-fa56518f209ad17ca0a46c408cc752d4083137ea.tar.lz yuzu-fa56518f209ad17ca0a46c408cc752d4083137ea.tar.xz yuzu-fa56518f209ad17ca0a46c408cc752d4083137ea.tar.zst yuzu-fa56518f209ad17ca0a46c408cc752d4083137ea.zip |
Diffstat (limited to 'src/video_core/texture_cache')
-rw-r--r-- | src/video_core/texture_cache/formatter.cpp | 8 | ||||
-rw-r--r-- | src/video_core/texture_cache/samples_helper.h | 2 |
2 files changed, 7 insertions, 3 deletions
diff --git a/src/video_core/texture_cache/formatter.cpp b/src/video_core/texture_cache/formatter.cpp index 6279d8e9e..2b7e0df72 100644 --- a/src/video_core/texture_cache/formatter.cpp +++ b/src/video_core/texture_cache/formatter.cpp @@ -10,19 +10,23 @@ #include "video_core/texture_cache/image_info.h" #include "video_core/texture_cache/image_view_base.h" #include "video_core/texture_cache/render_targets.h" +#include "video_core/texture_cache/samples_helper.h" namespace VideoCommon { std::string Name(const ImageBase& image) { const GPUVAddr gpu_addr = image.gpu_addr; const ImageInfo& info = image.info; - const u32 width = info.size.width; - const u32 height = info.size.height; + u32 width = info.size.width; + u32 height = info.size.height; const u32 depth = info.size.depth; const u32 num_layers = image.info.resources.layers; const u32 num_levels = image.info.resources.levels; std::string resource; if (image.info.num_samples > 1) { + const auto [samples_x, samples_y] = VideoCommon::SamplesLog2(image.info.num_samples); + width >>= samples_x; + height >>= samples_y; resource += fmt::format(":{}xMSAA", image.info.num_samples); } if (num_layers > 1) { diff --git a/src/video_core/texture_cache/samples_helper.h b/src/video_core/texture_cache/samples_helper.h index 203ac1b11..2ee2f8312 100644 --- a/src/video_core/texture_cache/samples_helper.h +++ b/src/video_core/texture_cache/samples_helper.h @@ -24,7 +24,7 @@ namespace VideoCommon { return {2, 2}; } ASSERT_MSG(false, "Invalid number of samples={}", num_samples); - return {1, 1}; + return {0, 0}; } [[nodiscard]] inline int NumSamples(Tegra::Texture::MsaaMode msaa_mode) { |