summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_vulkan/vk_texture_cache.h
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2022-12-28 15:32:31 +0100
committerFernando Sahmkow <fsahmkow27@gmail.com>2023-01-04 04:52:15 +0100
commit03ccd8bf432e8b2c945b68f00e8fa88f67388098 (patch)
tree446afdee8cfc6f5ec126bbdae7dbbe23b05d8550 /src/video_core/renderer_vulkan/vk_texture_cache.h
parentVulkan: Update blacklisting to latest driver versions. (diff)
downloadyuzu-03ccd8bf432e8b2c945b68f00e8fa88f67388098.tar
yuzu-03ccd8bf432e8b2c945b68f00e8fa88f67388098.tar.gz
yuzu-03ccd8bf432e8b2c945b68f00e8fa88f67388098.tar.bz2
yuzu-03ccd8bf432e8b2c945b68f00e8fa88f67388098.tar.lz
yuzu-03ccd8bf432e8b2c945b68f00e8fa88f67388098.tar.xz
yuzu-03ccd8bf432e8b2c945b68f00e8fa88f67388098.tar.zst
yuzu-03ccd8bf432e8b2c945b68f00e8fa88f67388098.zip
Diffstat (limited to 'src/video_core/renderer_vulkan/vk_texture_cache.h')
-rw-r--r--src/video_core/renderer_vulkan/vk_texture_cache.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/video_core/renderer_vulkan/vk_texture_cache.h b/src/video_core/renderer_vulkan/vk_texture_cache.h
index 7ec0df134..1f27a3589 100644
--- a/src/video_core/renderer_vulkan/vk_texture_cache.h
+++ b/src/video_core/renderer_vulkan/vk_texture_cache.h
@@ -51,7 +51,9 @@ public:
StagingBufferRef UploadStagingBuffer(size_t size);
- StagingBufferRef DownloadStagingBuffer(size_t size);
+ StagingBufferRef DownloadStagingBuffer(size_t size, bool deferred = false);
+
+ void FreeDeferredStagingBuffer(StagingBufferRef& ref);
void TickFrame();
@@ -347,6 +349,7 @@ struct TextureCacheParams {
static constexpr bool FRAMEBUFFER_BLITS = false;
static constexpr bool HAS_EMULATED_COPIES = false;
static constexpr bool HAS_DEVICE_MEMORY_INFO = true;
+ static constexpr bool IMPLEMENTS_ASYNC_DOWNLOADS = true;
using Runtime = Vulkan::TextureCacheRuntime;
using Image = Vulkan::Image;
@@ -354,6 +357,7 @@ struct TextureCacheParams {
using ImageView = Vulkan::ImageView;
using Sampler = Vulkan::Sampler;
using Framebuffer = Vulkan::Framebuffer;
+ using AsyncBuffer = Vulkan::StagingBufferRef;
};
using TextureCache = VideoCommon::TextureCache<TextureCacheParams>;