diff options
| author | Ameer J <52414509+ameerj@users.noreply.github.com> | 2023-08-06 14:49:34 -0400 |
|---|---|---|
| committer | Ameer J <52414509+ameerj@users.noreply.github.com> | 2023-08-06 14:54:58 -0400 |
| commit | b18c1fb1bbbcc235e9a1cbbb2704fed2e5895e61 (patch) | |
| tree | eab3d5b675ddac021b1c2c31c6f3d2cea41ef569 /src/video_core/renderer_vulkan | |
| parent | 913803bf653989d2d08ddd39caf2216b55275dfc (diff) | |
HACK: Avoid swizzling and reuploading ASTC image every frame
Diffstat (limited to 'src/video_core/renderer_vulkan')
| -rw-r--r-- | src/video_core/renderer_vulkan/vk_staging_buffer_pool.cpp | 1 | ||||
| -rw-r--r-- | src/video_core/renderer_vulkan/vk_texture_cache.cpp | 10 |
2 files changed, 10 insertions, 1 deletions
diff --git a/src/video_core/renderer_vulkan/vk_staging_buffer_pool.cpp b/src/video_core/renderer_vulkan/vk_staging_buffer_pool.cpp index ce92f66ab..27328dab2 100644 --- a/src/video_core/renderer_vulkan/vk_staging_buffer_pool.cpp +++ b/src/video_core/renderer_vulkan/vk_staging_buffer_pool.cpp @@ -214,6 +214,7 @@ StagingBufferPool::StagingBuffersCache& StagingBufferPool::GetCache(MemoryUsage } void StagingBufferPool::ReleaseCache(MemoryUsage usage) { + return; ReleaseLevel(GetCache(usage), current_delete_level); } diff --git a/src/video_core/renderer_vulkan/vk_texture_cache.cpp b/src/video_core/renderer_vulkan/vk_texture_cache.cpp index b3e17c332..51be57b19 100644 --- a/src/video_core/renderer_vulkan/vk_texture_cache.cpp +++ b/src/video_core/renderer_vulkan/vk_texture_cache.cpp @@ -846,7 +846,15 @@ void TextureCacheRuntime::Finish() { } StagingBufferRef TextureCacheRuntime::UploadStagingBuffer(size_t size) { - return staging_buffer_pool.Request(size, MemoryUsage::Upload); + static StagingBufferRef result; + static size_t last_size = 0; + if (size == last_size) { + return result; + } + LOG_ERROR(Debug, "Called"); + last_size = size; + result = staging_buffer_pool.Request(size, MemoryUsage::Upload); + return result; } StagingBufferRef TextureCacheRuntime::DownloadStagingBuffer(size_t size, bool deferred) { |
