SpiecsEngine
 
Loading...
Searching...
No Matches

◆ Build()

void Spices::Renderer::DescriptorSetBuilder::Build ( const VkAccelerationStructureKHR & accel = VK_NULL_HANDLE)

Create all buffer type descriptor set. Create pipeline layout.

Parameters
[in]accelAccelerationStructure. Pass it if call AddAccelerationStructure before.
Attention
Texture type descriptor set is not created here, but in Material::BuildMaterial().

UpdateDescriptorSet, skip bindless texture set.

AllocateDescriptorSet for Pool.

UpdateDescriptorSet.

UpdateDescriptorSet, skip bindless texture set.

AllocateDescriptorSet for Pool.

UpdateDescriptorSet.

Definition at line 1815 of file Renderer.cpp.

1816 {
1818
1819 const auto& descriptorSets = DescriptorSetManager::GetByName(m_DescriptorSetId);
1820
1821 for (auto& pair : descriptorSets)
1822 {
1826 if (pair.first == SpicesShader::BINDLESS_TEXTURE_SET)
1827 {
1828 if (!pair.second->Get())
1829 {
1830 pair.second->BuildBindLessTextureDescriptorSet(m_HandledSubPass->GetName());
1831 }
1832
1833 pair.second->UpdateBindLessTextureDescriptorSet(m_ImageInfos[pair.first]);
1834 continue;
1835 }
1836
1840 pair.second->BuildDescriptorSet(m_HandledSubPass->GetName());
1841
1845 pair.second->UpdateDescriptorSet(m_ImageInfos[pair.first], m_BufferInfos[pair.first], accel);
1846 }
1847 }
#define SPICES_PROFILE_ZONE
static DescriptorSetInfo & GetByName(const String2 &name)
Get a DescriptorSetInfo by owner's name.
std::unordered_map< uint32_t, std::unordered_map< uint32_t, std::vector< VkDescriptorImageInfo > > > m_ImageInfos
DescriptorSet Image type binging info. [set] - [binding] - [info].
Definition Renderer.h:742
String2 m_DescriptorSetId
The Descriptor Set Manager ID descriptorSet belongs to.
Definition Renderer.h:730
std::unordered_map< uint32_t, std::unordered_map< uint32_t, VkDescriptorBufferInfo > > m_BufferInfos
DescriptorSet Buffer type binging info. [set] - [binding] - [info].
Definition Renderer.h:736
std::shared_ptr< RendererSubPass > m_HandledSubPass
Handled Sub pass.
Definition Renderer.h:725