Use no. of model images for pool size

This commit is contained in:
Sascha Willems 2024-02-12 10:23:56 +01:00
parent 679d099987
commit 12892a87c2

View file

@ -1,7 +1,7 @@
/*
* Vulkan Example - Rendering a glTF model using hardware accelerated ray tracing example (for proper transparency, this sample does frame accumulation)
*
* Copyright (C) 2023 by Sascha Willems - www.saschawillems.de
* Copyright (C) 2023-2024 by Sascha Willems - www.saschawillems.de
*
* This code is licensed under the MIT license (MIT) (http://opensource.org/licenses/MIT)
*/
@ -519,15 +519,12 @@ public:
*/
void createDescriptorSets()
{
// @todo
uint32_t imageCount{ 0 };
imageCount = static_cast<uint32_t>(model.textures.size());
uint32_t imageCount = static_cast<uint32_t>(model.textures.size());
std::vector<VkDescriptorPoolSize> poolSizes = {
{ VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR, 1 },
{ VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, 1 },
{ VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, 1 },
{ VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, 1 }
{ VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, static_cast<uint32_t>(model.textures.size()) }
};
VkDescriptorPoolCreateInfo descriptorPoolCreateInfo = vks::initializers::descriptorPoolCreateInfo(poolSizes, 1);
VK_CHECK_RESULT(vkCreateDescriptorPool(device, &descriptorPoolCreateInfo, nullptr, &descriptorPool));