From f9517db5929ae60169610de8d5851281b3c98f56 Mon Sep 17 00:00:00 2001 From: Anish Bhobe Date: Sat, 27 Jul 2024 13:00:18 +0200 Subject: [PATCH] Bug Fixes in Image init and Texture GRM. Image flags now init to 0 (Image invalid by default). GPU Resource manager correctly adds Texture Descriptor Write Ownership. --- aster/image.h | 2 +- samples/00_util/gpu_resource_manager.cpp | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/aster/image.h b/aster/image.h index b3c93c5..a7f82c6 100644 --- a/aster/image.h +++ b/aster/image.h @@ -41,7 +41,7 @@ struct Image vk::Extent3D m_Extent; // Image.m_MipLevels_ is used for bookkeeping // If the image is Invalid, the remaining data in Image is used intrusively by `GpuResourceManager`. - u32 m_MipLevels_; + u32 m_MipLevels_ = 0; [[nodiscard]] bool IsValid() const; [[nodiscard]] bool IsOwned() const; diff --git a/samples/00_util/gpu_resource_manager.cpp b/samples/00_util/gpu_resource_manager.cpp index 1683a48..33a5473 100644 --- a/samples/00_util/gpu_resource_manager.cpp +++ b/samples/00_util/gpu_resource_manager.cpp @@ -294,7 +294,7 @@ GpuResourceManager::Commit(Texture *texture) .pImageInfo = &m_WriteInfos.back().uImageInfo, }); - m_WriteOwner.emplace_back(HandleType::eBuffer, handle.m_Index); + m_WriteOwner.emplace_back(HandleType::eTexture, handle.m_Index); #if !defined(NDEBUG) ++m_CommitedTextureCount; @@ -428,6 +428,7 @@ GpuResourceManager::~GpuResourceManager() #endif m_BufferManager.Destroy(m_Device); + m_TextureManager.Destroy(m_Device); m_Device->m_Device.destroy(m_ImmutableSampler, nullptr); m_Device->m_Device.destroy(m_DescriptorPool, nullptr); m_Device->m_Device.destroy(m_SetLayout, nullptr);