From 6adff2a7163506d3bb51a69a2213a284c35ff54d Mon Sep 17 00:00:00 2001 From: jonahwilliams Date: Wed, 8 May 2024 08:12:26 -0700 Subject: [PATCH] [Impeller] initialize ahb swapchain with max entries. --- .../renderer/backend/vulkan/android/ahb_texture_source_vk.cc | 3 +++ .../backend/vulkan/swapchain/ahb/ahb_texture_pool_vk.cc | 3 +++ 2 files changed, 6 insertions(+) diff --git a/impeller/renderer/backend/vulkan/android/ahb_texture_source_vk.cc b/impeller/renderer/backend/vulkan/android/ahb_texture_source_vk.cc index c03d450daa9a3..c6d0197bac456 100644 --- a/impeller/renderer/backend/vulkan/android/ahb_texture_source_vk.cc +++ b/impeller/renderer/backend/vulkan/android/ahb_texture_source_vk.cc @@ -281,6 +281,9 @@ static TextureDescriptor ToTextureDescriptor( desc.mip_count = (ahb_desc.usage & AHARDWAREBUFFER_USAGE_GPU_MIPMAP_COMPLETE) ? ahb_size.MipCount() : 1u; + if (ahb_desc.usage & AHARDWAREBUFFER_USAGE_COMPOSER_OVERLAY) { + desc.usage = TextureUsage::kRenderTarget; + } return desc; } diff --git a/impeller/renderer/backend/vulkan/swapchain/ahb/ahb_texture_pool_vk.cc b/impeller/renderer/backend/vulkan/swapchain/ahb/ahb_texture_pool_vk.cc index 31011109dffd0..712af01b98697 100644 --- a/impeller/renderer/backend/vulkan/swapchain/ahb/ahb_texture_pool_vk.cc +++ b/impeller/renderer/backend/vulkan/swapchain/ahb/ahb_texture_pool_vk.cc @@ -16,6 +16,9 @@ AHBTexturePoolVK::AHBTexturePoolVK(std::weak_ptr context, VALIDATION_LOG << "Swapchain image is not allocatable."; return; } + for (auto i = 0u; i < max_entries_; i++) { + pool_.emplace_back(CreateTexture()); + } is_valid_ = true; }