summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_vulkan
diff options
context:
space:
mode:
authorameerj <52414509+ameerj@users.noreply.github.com>2021-10-07 08:15:16 +0200
committerFernando Sahmkow <fsahmkow27@gmail.com>2021-11-16 22:11:30 +0100
commit89a7e566c7a101d688e96641cc2a485f2da54d4b (patch)
tree4befc90f801f552f2efba6f477396b6f359524ce /src/video_core/renderer_vulkan
parentvk_texture_cache: Fix early returns on unsupported scales (diff)
downloadyuzu-89a7e566c7a101d688e96641cc2a485f2da54d4b.tar
yuzu-89a7e566c7a101d688e96641cc2a485f2da54d4b.tar.gz
yuzu-89a7e566c7a101d688e96641cc2a485f2da54d4b.tar.bz2
yuzu-89a7e566c7a101d688e96641cc2a485f2da54d4b.tar.lz
yuzu-89a7e566c7a101d688e96641cc2a485f2da54d4b.tar.xz
yuzu-89a7e566c7a101d688e96641cc2a485f2da54d4b.tar.zst
yuzu-89a7e566c7a101d688e96641cc2a485f2da54d4b.zip
Diffstat (limited to 'src/video_core/renderer_vulkan')
-rw-r--r--src/video_core/renderer_vulkan/vk_texture_cache.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/video_core/renderer_vulkan/vk_texture_cache.cpp b/src/video_core/renderer_vulkan/vk_texture_cache.cpp
index 1ab2b1fe9..65506f75e 100644
--- a/src/video_core/renderer_vulkan/vk_texture_cache.cpp
+++ b/src/video_core/renderer_vulkan/vk_texture_cache.cpp
@@ -1137,11 +1137,11 @@ bool Image::ScaleUp() {
const auto& device = runtime->device;
const PixelFormat format = StorageFormat(info.format);
const auto format_info = MaxwellToVK::SurfaceFormat(device, FormatType::Optimal, false, format);
- const auto similar = device.GetSupportedFormat(
- format_info.format, (VK_FORMAT_FEATURE_BLIT_SRC_BIT | VK_FORMAT_FEATURE_BLIT_DST_BIT),
- FormatType::Optimal);
- if (similar != format_info.format) {
- return true;
+ const auto blit_usage = VK_FORMAT_FEATURE_BLIT_SRC_BIT | VK_FORMAT_FEATURE_BLIT_DST_BIT;
+ if (!device.IsFormatSupported(format_info.format, blit_usage, FormatType::Optimal)) {
+ LOG_ERROR(Render_Vulkan, "Device does not support scaling format {}", format);
+ // TODO: Use helper blits where applicable
+ return false;
}
if (!scaled_image) {
const u32 up = resolution.up_scale;